sql数据库代码?如何使用SQL代码创建数据库
各位老铁们好,相信很多人对sql数据库代码都不是特别的了解,因此呢,今天就来为大家分享下关于sql数据库代码以及如何使用SQL代码创建数据库的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!
sql增删改查的基本代码
adoquery1.Fielddefs[1].Name;字段名
dbgrid1.columns[0].width:=10; dbgrid的字段宽度
adoquery1.Fields[i].DataType=ftString字段类型
update jb_spzl set kp_item_name=upper(kp_item_name)修改数据库表中某一列为大写
select* from master.dbo.sysobjects,jm_barcode.dbo.users多库查询
adotable1.sort:='字段名称 ASC' adotable排序
SQL常用语句一览
sp_password null,'新密码','sa'修改数据库密码
(1)数据记录筛选:
sql="select* from数据表 where字段名=字段值 orderby字段名 [desc]"
sql="select* from数据表 where字段名 like'%字段值%' orderby字段名 [desc]"
sql="select top10* from数据表 where字段名 orderby字段名[desc]"
sql="select* from数据表 where字段名 in('值1','值2','值3')"
sql="select* from数据表 where字段名 between值1 and值 2"
(2)更新数据记录:
sql="update数据表 set字段名=字段值 where条件表达式"
sql="update数据表 set字段1=值1,字段2=值2……字段n=值n where条件表达式"
(3)删除数据记录:
sql="delete from数据表 where条件表达式"
sql="delete from数据表"(将数据表所有记录删除)
(4)添加数据记录:
sql="insert into数据表(字段1,字段2,字段3…) values(值1,值2,值3…)"
sql="insert into目标数据表 select* from源数据表"(把源数据表的记录添加到目标数据表)
(5)数据记录统计函数:
AVG(字段名)得出一个表格栏平均值
COUNT(*|字段名)对数据行数的统计或对某一栏有值的数据行数统计
MAX(字段名)取得一个表格栏最大的值
MIN(字段名)取得一个表格栏最小的值
SUM(字段名)把数据栏的值相加
引用以上函数的方法:
sql="selectsum(字段名)as别名from数据表where条件表达式"
setrs=conn.excute(sql)
用rs("别名")获取统的计值,其它函数运用同上。
(5)数据表的建立和删除:
CREATETABLE数据表名称(字段1类型1(长度),字段2类型2(长度)……)
例:CREATETABLEtab01(namevarchar(50), datetimedefaultnow())
DROPTABLE数据表名称(永久性删除一个数据表)
4.记录集对象的方法:
rs.movenext将记录指针从当前的位置向下移一行
rs.moveprevious将记录指针从当前的位置向上移一行
rs.movefirst将记录指针移到数据表第一行
rs.movelast将记录指针移到数据表最后一行
rs.absoluteposition=N将记录指针移到数据表第N行
rs.absolutepage=N将记录指针移到第N页的第一行
rs.pagesize=N设置每页为N条记录
rs.pagecount根据pagesize的设置返回总页数
rs.recordcount返回记录总数
rs.bof返回记录指针是否超出数据表首端,true表示是,false为否
rs.eof返回记录指针是否超出数据表末端,true表示是,false为否
rs.delete删除当前记录,但记录指针不会向下移动
rs.addnew添加记录到数据表末端
rs.update更新数据表记录
SQL语句的添加、删除、修改虽然有如下很多种方法,但在使用过程中还是不够用,不知是否有高手把更多灵活的使用方法贡献出来?
添加、删除、修改使用db.Execute(Sql)命令执行操作
╔----------------╗
☆数据记录筛选☆
╚----------------╝
注意:单双引号的用法可能有误(没有测式)
Sql="Select Distinct字段名 From数据表"
Distinct函数,查询数据库存表内不重复的记录
Sql="Select Count(*) From数据表 where字段名1>#18:0:0# and字段名1<#19:00#"
count函数,查询数库表内有多少条记录,“字段名1”是指同一字段
例:
set rs=conn.execute("select count(id) as idnum from news")
response.write rs("idnum")
sql="select* from数据表 where字段名 between值1 and值2"
Sql="select* from数据表 where字段名 between#2003-8-10# and#2003-8-12#"
在日期类数值为2003-8-10 19:55:08的字段里查找2003-8-10至2003-8-12的所有记录,而不管是几点几分。
select* from tb_name where datetime between#2003-8-10# and#2003-8-12#
字段里面的数据格式为:2003-8-10 19:55:08,通过sql查出2003-8-10至2003-8-12的所有纪录,而不管是几点几分。
Sql="select* from数据表 where字段名=字段值 order by字段名 [desc]"
Sql="select* from数据表 where字段名 like'%字段值%' order by字段名 [desc]"
模糊查询
Sql="select top 10* from数据表 where字段名 order by字段名 [desc]"
查找数据库中前10记录
Sql="select top n* form数据表 order by newid()"
随机取出数据库中的若干条记录的方法
top n,n就是要取出的记录数
Sql="select* from数据表 where字段名 in('值1','值2','值3')"
╔----------------╗
☆添加数据记录☆
╚----------------╝
sql="insert into数据表(字段1,字段2,字段3…) valuess(值1,值2,值3…)"
sql="insert into数据表 valuess(值1,值2,值3…)"
不指定具体字段名表示将按照数据表中字段的顺序,依次添加
sql="insert into目标数据表 select* from源数据表"
把源数据表的记录添加到目标数据表
╔----------------╗
☆更新数据记录☆
╚----------------╝
Sql="update数据表 set字段名=字段值 where条件表达式"
Sql="update数据表 set字段1=值1,字段2=值2……字段n=值n where条件表达式"
Sql="update数据表 set字段1=值1,字段2=值2……字段n=值n"
没有条件则更新整个数据表中的指定字段值
╔----------------╗
☆删除数据记录☆
╚----------------╝
Sql="delete from数据表 where条件表达式"
Sql="delete from数据表"
没有条件将删除数据表中所有记录)
╔--------------------╗
☆数据记录统计函数☆
╚--------------------╝
AVG(字段名)得出一个表格栏平均值
COUNT(*|字段名)对数据行数的统计或对某一栏有值的数据行数统计
MAX(字段名)取得一个表格栏最大的值
MIN(字段名)取得一个表格栏最小的值
SUM(字段名)把数据栏的值相加
引用以上函数的方法:
sql="select sum(字段名) as别名 from数据表 where条件表达式"
set rs=conn.excute(sql)
用 rs("别名")获取统的计值,其它函数运用同上。
╔----------------------╗
☆数据表的建立和删除☆
╚----------------------╝
CREATE TABLE数据表名称(字段1类型1(长度),字段2类型2(长度)……)
例:CREATE TABLE tab01(name varchar(50),datetime default now())
DROP TABLE数据表名称(永久性删除一个数据表)
╔--------------------╗
☆记录集对象的方法☆
╚--------------------╝
rs.movenext将记录指针从当前的位置向下移一行
rs.moveprevious将记录指针从当前的位置向上移一行
rs.movefirst将记录指针移到数据表第一行
rs.movelast将记录指针移到数据表最后一行
rs.absoluteposition=N将记录指针移到数据表第N行
rs.absolutepage=N将记录指针移到第N页的第一行
rs.pagesize=N设置每页为N条记录
rs.pagecount根据 pagesize的设置返回总页数
rs.recordcount返回记录总数
rs.bof返回记录指针是否超出数据表首端,true表示是,false为否
rs.eof返回记录指针是否超出数据表末端,true表示是,false为否
rs.delete删除当前记录,但记录指针不会向下移动
rs.addnew添加记录到数据表末端
rs.update更新数据表记录
%:代表任意长的一段字符 _:代表一个字符 [a,b,c,d]:a、b、c、d中的任意一个 [^a,b,c,d]:不在a、b、c、d中的任意一个
如何使用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语言创建学生成绩数据库的代码
create database [数据库名];
user [该数据库名];
--学生表
create table [学生表表名](
sId int primary key,--学生ID编号,主键
sName varchar(10) unique not null,--学生名字
);
--科目表
create table [科目表表名](
sjId int primary key,--科目ID编号,主键
sjName varchar(10) unique not null,--科目名称
);
--成绩表
create table [成绩表表名]
rId int primary key,--成绩ID编号,主键
sjId int references [科目表表名](sjId),--科目ID编号,继承科目表的ID编号
sId int references [学生表表名](sId),--学生ID编号,继承学生表的ID编号
result float not null--成绩
);
--查询语句
select r.rId,sj.sjId,sj.sjName,su.sId,su.sName,r.result
from [成绩表表名] r,
join [科目表表名] sj on sj.sjId=r.sjId,
join [学生表表名] su on su.sId=r.sId;
好了,本文到此结束,如果可以帮助到大家,还望关注本站哦!