数据库常用语句
Select * from [table] where name = "test" //查询name字段等于test
Select * from [table] where [datatime] = #2013/9/9# //查询datatime字段等于2013/9/9
alter table table1 add [test1] varchar(50),[test2] varchar(50) //添加字段列
select distinct * from 表名 //去重数据
//UNION 运算符通过组合其他两个结果表(例如TABLE1 和TABLE2)并消去表中任何重复行而派生出一个结果表
select [test1],[test2]
from [table1]
union
select [test1],[test2]
from [table2]
创建数据库
创建之前判断该数据库是否存在 if exists (select * from sysdatabases where name='databaseName') drop database databaseName go Create DATABASE databasename on primary-- 默认就属于primary文件组,可省略 ( /*--数据文件的具体描述--*/ name=‘databasename_data’,-- 主数据文件的逻辑名称 filename=‘'所存位置:\databasename_data.mdf’, -- 主数据文件的物理名称 size=数值mb, --主数据文件的初始大小 maxsize=数值mb, -- 主数据文件增长的最大值 filegrowth=数值%--主数据文件的增长率 ) log on ( /*--日志文件的具体描述,各参数含义同上--*/ name='databasename_log', -- 日志文件的逻辑名称 filename='所存目录:\databasename_log.ldf', -- 日志文件的物理名称 size=数值mb, --日志文件的初始大小 filegrowth=数值mb--日志文件的增长值 )删除数据库
drop database databasename备份sql server
--- 创建备份数据的 device USE master EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat' --- 开始备份 BACKUP DATABASE pubs TO testBack创建新表
create table tabname(col1 type1 [not null] [primary key] identity(起始值,递增量) ,col2 type2 [not null],..)--primary key为主键 identity表示递增数量 根据已有的表创建新表: A:go use 原数据库名 go select * into 目的数据库名.dbo.目的表名 from 原表名(使用旧表创建新表) B:create table tab_new as select col1,col2… from tab_old definition only创建序列
create sequence SIMON_SEQUENCE minvalue 1 -- 最小值 maxvalue 999999999999999999999999999 -- 最大值 start with 1 -- 开始值 increment by 1 -- 每次加几 cache 20;删除表
drop table tabname--这是将表连同表中信息一起删除但是日志文件中会有记录删除表中信息
delete from tabname-这是将表中信息删除但是会保留这个表增加一个列
Alter table tabname add colname coltype删除一个列
Alter table tabname drop column colname添加主键
Alter table tabname add primary key(col) 说明:删除主键:Alter table tabname drop primary key(col)创建索引
create [unique] index idxname on tabname(col…。) 删除索引:drop index idxname on tabname 注:索引是不可更改的,想更改必须删除重新建。创建视图
create view viewname as select statement 删除视图:drop view viewname基本的sql语句
(1) 数据记录筛选: sql="select * from 数据表 where字段名=字段值 order by字段名[desc]" sql="select * from 数据表 where字段名like '%字段值%' order by 字段名 [desc]" sql="select top 10 * from 数据表 where字段名=字段值 order by 字段名 [desc]" sql="select top 10 * from 数据表 order by 字段名 [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="select sum(字段名) as 别名 from 数据表 where 条件表达式" set rs=conn.excute(sql) 用 rs("别名") 获取统计的值,其它函数运用同上。 查询去除重复值:select distinct * from table1 (5) 数据表的建立和删除: CREATE TABLE 数据表名称(字段1 类型1(长度),字段2 类型2(长度) …… ) (6) 单列求和: SELECT SUM(字段名) FROM 数据表
待续...
总结
- 上一篇: tar 解压命令
- 下一篇: SQL Server 2005如何起用