sql数据库编程,SQL可以用来编程吗
大家好,今天小编来为大家解答sql数据库编程这个问题,SQL可以用来编程吗很多人还不知道,现在让我们一起来看看吧!
SQL可以用来编程吗
SQL是数据库结构化查询分析语言,他分为三个层次,其一是数据定义,定义数据库中的表呀列呀什么的;其二是数据操纵,就是向表里插入、修改或删除数据;其三是数据查询,就是从现有的数据中查出你要的数据来。可以说SQL的主要功能就是处理数据库的。如果你需要编写一些流程化的程序的话,就需要对SQL的争强,比如微软的MS SQL SERVER;oracle等都有相应的流程化的增强。而新的SQL规范甚至对要求数据库可以使用Java类。有了这些流程语句的增强后,在数据库中就可以写函数、过程、包等等了。
你也看到了SQL语言怎么强化都不会有界面的,前台界面都是要依赖其它编程语言的,而SQL除了在数据库中直接使用以外,还可以作为嵌入式语言在各种语言中使用,以便前台程序从数据库中取出数据,调用数据库中的函数、过程等等
作为初学SQl的我觉得你首先应该明确将来干什么,如果是想做数据库前端程序,首先就应该熟练掌握一门编程语言才行。如果是想作数据库管理员DBA那么学好SQL以外,得学专业的数据库维护的知识。如果仅仅是工作中用到SQL语句,需要做做报表查查数据什么的,那么就只要学好select语句,其它的做个了解就可以了
sql数据库的基本操作
命令行
1、显示当前数据库服务器中的数据库列表:mysql> SHOW DATABASES;
2、建立数据库:mysql> CREATE DATABASE库名;
3、建立数据表:mysql> USE库名;mysql> CREATE TABLE表名(字段名 VARCHAR(20),字段名 CHAR(1));
4、删除数据库:mysql> DROP DATABASE库名;
5、删除数据表:mysql> DROP TABLE表名;
6、将表中记录清空:mysql> DELETE FROM表名;
7、往表中插入记录:mysql> INSERT INTO表名 VALUES("hyq","M");
8、更新表中数据:mysql-> UPDATE表名 SET字段名1='a',字段名2='b' WHERE字段名3='c';
9、用文本方式将数据装入数据表中:mysql> load data local infile"d:/mysql.txt" into table表名;
10、导入.sql文件命令:mysql> USE数据库名;mysql> source d:/mysql.sql;
11、命令行修改root密码:mysql> update mysql.user set password=password('新密码') where user='root';mysql> flush privileges;
12.修改密码的三种方法:mysql>update user set password=password('123456') where user='joy_pen';mysql>flush privileges;mysql>set password for'joy_oen'=password('123456');mysql>grant usage on*.* to'joy_pen' identified by'123456';
1、创建数据库
命令:create database<数据库名>例如:建立一个名为xhkdb的数据库mysql> create database xhkdb;
2、显示所有的数据库
命令:show databases(注意:最后有个s)mysql> show databases;
3、删除数据库
命令:drop database<数据库名>例如:删除名为 xhkdb的数据库mysql> drop database xhkdb;
4、连接数据库
命令: use<数据库名>例如:如果xhkdb数据库存在,尝试存取它:mysql> use xhkdb;屏幕提示:Database changed
5、当前选择(连接)的数据库mysql> select database();
6、当前数据库包含的表信息:mysql> show tables;(注意:最后有个s)
三、表操作,操作之前应连接某个数据库
1、建表
命令:create table<表名>(<字段名1><类型1> [,..<字段名n><类型n>]);
mysql> create table MyClass(
> id int(4) not null primary key auto_increment,
> name char(20) not null,
> sex int(4) not null default''0'',
> degree double(16,2));
2、获取表结构
命令: desc表名,或者show columns from表名
mysql>DESCRIBE MyClass
mysql> desc MyClass;
mysql> show columns from MyClass;
3、删除表
命令:drop table<表名>
例如:删除表名为 MyClass的表 mysql> drop table MyClass;
4、插入数据
命令:insert into<表名> [(<字段名1>[,..<字段名n> ])] values(值1)[,(值n)]
例如,往表 MyClass中插入二条记录,这二条记录表示:编号为1的名为Tom的成绩为96.45,编号为2的名为Joan的成绩为82.99,编号为3的名为Wang的成绩为96.5.
mysql> insert into MyClass values(1,'Tom',96.45),(2,'Joan',82.99),(2,'Wang', 96.59);
5、查询表中的数据
1)、查询所有行
命令: select<字段1,字段2,...> from<表名> where<表达式>
例如:查看表 MyClass中所有数据 mysql> select* from MyClass;
2)、查询前几行数据
例如:查看表 MyClass中前2行数据
mysql> select* from MyClass order by id limit 0,2;
6、删除表中数据
命令:delete from表名 where表达式
例如:删除表 MyClass中编号为1的记录
mysql> delete from MyClass where id=1;
7、修改表中数据:update表名 set字段=新值,… where条件
mysql> update MyClass set name=''Mary'' where id=1;
8、在表中增加字段:
命令:alter table表名 add字段类型其他;
例如:在表MyClass中添加了一个字段passtest,类型为int(4),默认值为0
mysql> alter table MyClass add passtest int(4) default''0''
9、更改表名:
命令:rename table原表名 to新表名;
例如:在表MyClass名字更改为YouClass
mysql> rename table MyClass to YouClass;
更新字段内容
update表名 set字段名=新内容
update表名 set字段名= replace(字段名,''旧内容'',''新内容'');
如何使用SQL代码创建数据库
创建数据库和表的操作有两种方法:
一、可视化操作
1.创建数据库
选中数据库右击,在出现的对话框中选择新建数据库,然后新出现的对话框中填写数据库的名称
2.创建数据表
选中数据库下的表右击,在出现的对话框最上方有新建表选项,新出现的对话框中有列名、数据类型、允许Null值三列,这里可以添加表的的列,添加好列后保存Ctrl+S或者点击上方的保存,填写表名称确定就创建好了。
二、使用SQL语句创建
1.创建数据库
createdatabasestuDB--stuDB是数据库的名称
onprimary--默认就属于primary文件组,可省略
(
/*--数据文件的具体描述--*/
name='stuDB_data',--主数据文件的逻辑名称
filename='D:stuDB_data.mdf',--主数据文件的物理路径和名称
size=5mb,--主数据文件的初始大小
maxsize=100mb,--主数据文件增长的最大值
filegrowth=15%--主数据文件的增长率
)
logon
(
/*--日志文件的具体描述,各参数含义同上--*/
name='stuDB_log',
filename='D:stuDB_log.ldf',
size=2mb,
filegrowth=1mb
)
-----2.创建数据表
useStuDB--使用某个数据库(在某个数据库下建表)
go
ifexists(select*fromsysobjectswherename='stuMarks')--查询数据库是否已存在此表
droptablestuMarks--如果存在该表则删除,不存在不执行此句
createtablestuMarks--stuMarks是表的名称
(
ExamNointidentity(1,1)primarykey,--列名数据类型约束
stuNochar(6)notnull,--列名数据类型是否允许插入Null值
writtenExamintnotnull,
LabExamintnotnull
)
go
--其中,列属性"identity(起始值,递增量)"表示"ExamNo"列为自动编号,也称为标识列altertable表名
addconstraint约束名约束类型具体的约束说明
altertable表名
dropconstraint约束名
什么是SQL编程
这个概念太大了,只能给一个泛泛的概念,就是利用SQL一系列语句完成数据的存储、查询的功能,这一系列的SQL语句的编写称之为sql编程。
sql编程里东西很多,有简单的SQL语句,也有类似程序式为了完成一定功能而编写的代码集合,如常见的触发器、存储过程、函数等。
文章到此结束,如果本次分享的sql数据库编程和SQL可以用来编程吗的问题解决了您的问题,那么我们由衷的感到高兴!