数据库常用语句
oracle数据库基本语句
oracle数据库基本语句oracle 数据库是一种常用的关系型数据库管理系统,常用的oracle数据库包括oracle10g、oracle11g和oracle12c。
要掌握oracle的基本用法,必须掌握其基本的语句。
oracle的常用基本语句有:一、数据定义语言(DDL)1、创建数据表:CREATE TABLE 表名(字段名数据类型[完整性约束条件],字段名数据类型[完整性约束条件],……);2、修改数据表: ALTER TABLE 表名 ADD(字段名数据类型[完整性约束条件],字段名数据类型[完整性约束条件],……);3、删除数据表: DROP TABLE 表名;4、创建索引:CREATE [UNIQUE] INDEX 索引名ON 表名[字段名[,字段名];5、删除索引: DROP INDEX 索引名;三、数据控制语言(DCL)1、建立用户: CREATE USER 用户名 IDENTIFIED BY 密码;2、删除用户: DROP USER 用户名;3、授权:GRANT 权限 ON 对象 TO 用户[WITH GRANT OPTION];4、回收授权: REVOKR 权限 ON 对象 FROM 用户;5、控制事务: COMMIT/ROLLBACK;四、数据库控制语言(DBCL)1、创建数据库:CREATE DATABASE 数据库名;2、删除数据库: DROP DATABASE 数据库名;3、创建表空间:CREATE TABLESPACE 表空间名 SEGMENT SPACE MANAGEMENT 自动;4、删除表空间: DROP TABLESPACE 表空间名;5、管理会话: ALTER SYSTEM KILL SESSION ['会话号'];。
数据库命令语句
数据库命令语句
1. CREATE DATABASE - 创建新数据库
2. CREATE TABLE - 创建新表
3. SELECT - 从表中选取数据
4. INSERT INTO - 向表中插入新数据
5. UPDATE - 更新表中数据
6. DELETE - 从表中删除数据
7. ALTER TABLE - 修改表的结构
8. DROP TABLE - 删除表
9. INDEX - 创建索引
10. JOIN - 在多个表之间进行关联
11. GROUP BY - 按照指定的列进行分组
12. ORDER BY - 对结果集按照指定列进行排序
13. UNION - 把两个或多个SELECT 语句的结果合并起来
14. TRUNCATE TABLE - 删除表中的所有数据,但不删除表定义
15. COMMIT - 事务提交
16. ROLLBACK - 事务回滚
17. GRANT - 赋予用户访问权限
18. REVOKE - 撤销用户访问权限
19. CREATE VIEW - 创建视图
20. ALTER VIEW - 修改视图。
SQL2000数据库常用语句
type vender pcs
电脑 A 1
电脑 A 1
光盘 B 2
光盘 A 2
手机 B 3
手机 C 3
23、说明:初始化表table1
TRUNCATE TABLE table1
24、说明:选择从10到15的记录
select top 5 * from (select top 15 * from table order by id asc) table_别名 order by id desc
8、说明:between的用法,between限制查询数据范围时包括了边界值,not between不包括
select * from table1 where time between time1 and time2
select a,b,c, from table1 where a not between 数值1 and 数值2
三、技巧
1、1=1,1=2的使用,在SQL语句组合时用的较多
“where 1=1” 是表示选择全部 “where 1=2”全部不选,
9、说明:in 的使用方法
select * from table1 where a [not] in (‘值1’,’值2’,’值4’,’值6’)
10、说明:两张关联表,删除主表中已经在副表中没有的信息
delete from table1 where not exists ( select * from table2 where table1.field1=table2.field1 )
13、说明:一条sql 语句搞定数据库分页
select top 10 b.* from (select top 20 主键字段,排序字段 from 表名 order by 排序字段 desc) a,表名 b where b.主键字段 = a.主键字段 order by a.排序字段
数据库基本操作语句
数据库基本操作语句1、select 语句SELECT 语句用于从数据库中选取数据,结果被存储在一个结果表中,称为结果集。
SELECT 列名称FROM 表名称;或SELECT *FROM 表名称;2、select distinct 语句SELECT DISTINCT 语句用于返回唯一不同的值。
在表中,一个列可能会包含多个重复值,有时您也许希望仅仅列出不同(distinct)的值。
DISTINCT 关键词用于返回唯一不同的值。
SELECT DISTINCT 列名称FROM 表名称;3、where 子句WHERE 子句用于提取那些满足指定条件的记录。
SELECT *FROM 表名称WHERE 列名称运算符值;运算符:大于、等于、小于、between、like…SQL 使用单引号来引用字符;如果是数值,不需要加引号4、and 和or 运算符AND & OR 运算符用于基于一个以上的条件对记录进行过滤。
如果第一个条件和第二个条件都成立,则AND 运算符显示一条记录。
如果第一个条件和第二个条件中只要有一个成立,则OR 运算符显示一条记录。
SELECT * FROM 表名称WHERE 列1 = 值1AND (列2 = 值2 OR 列2 = 值3);5、order by 语句ORDER BY 关键字用于对结果集进行排序。
ORDER BY 关键字用于对结果集按照一个列或者多个列进行排序。
ORDER BY 关键字默认按照升序(ASC)对记录进行排序。
如果需要按照降序对记录进行排序,您可以使用DESC 关键字。
SELECT * FROM 表名称ORDER BY 列名称ASC|DESC;6、insert into 语句INSERT INTO 语句用于向表中插入新记录。
第一种形式无需指定要插入数据的列名,只需提供被插入的值即可:INSERT INTO 表名称VALUES (值1,值2,...);第二种形式需要指定列名及被插入的值:INSERT INTO 表名称(列1,列2,...)VALUES (值1,值2,...);7、update 语句UPDATE 语句用于更新表中已存在的记录。
常用的数据库语句
常用的数据库语句1. “SELECT 语句,那可太常用啦!就好比你在茫茫人海中精准找到你想要的那个人一样。
比如说,你想从学生表里找出所有姓张的同学,用它就能轻松搞定啦!”2. “INSERT 语句呀,就像给你的数据库这个大仓库添加新货物一样重要呢!比如你新认识了一个朋友,要把他的信息加到你的通讯录里,这时候就需要它啦!”3. “UPDATE 语句,哇哦,这简直是让数据旧貌换新颜的魔法棒呀!好比你发现自己之前填的信息有误,赶紧用它来改正,让一切变得准确无误!比如把某个同学的电话号码改一下。
”4. “DELETE 语句,嘿,这可是个厉害的角色呢!就像你大扫除时扔掉不需要的东西一样干脆。
要是有个错误的数据,用它一下就删掉啦!”5. “WHERE 子句,这可是筛选的好帮手呀!就像你挑苹果只挑红的甜的一样,能让你得到你真正想要的。
比如你只想看成绩大于 90 分的同学记录。
”6. “ORDER BY 子句,哎呀呀,它能让你的数据排排队呢!像给一群小朋友排队一样整齐。
比如把同学们按成绩高低排个序。
”7. “GROUP BY 子句,这就像是把相似的东西归到一起一样神奇!比如把学生按班级分组统计人数。
”8. “JOIN 操作,哇塞,这可让不同的表联合起来发挥大作用啦!就像几个好朋友手牵手一起做事一样。
比如把学生表和成绩表连接起来看每个学生的具体成绩。
”9. “DISTINCT 关键字,嘿,它能帮你去掉重复的呢!就像把重复的玩具挑出去只留下不一样的。
比如看有哪些不同的课程。
”10. “COUNT 函数,哈哈,它能快速数数呀!就像你数自己有几个糖果一样方便。
比如统计有多少个学生。
”。
mysql数据库常用语句大全
mysql数据库常用语句大全1.连接数据库:连接本地数据库:mysql -u root -p连接远程数据库:mysql -h 192.169.22.199 -u root -p退出数据库:exit2.创建数据库:create database payment;使用 mysqladmin 创建数据库mysqladmin -u root -p create abc_db; 3.显示所有数据库:show databases;4.删除数据库:drop database payment;使用 mysqladmin 删除数据库mysqladmin -u root -p drop abc_db5.选择数据库:use home_db;6.数据类型:数值类型:TINYINT:SMALLINT:MEDIUMINT:INT(INTEGER):BIGINT:FLOAT:DOUBLE:DECIMAL:日期和时间类型:DATE:TIEM:DATETIME:YEAR:TIMESTAMP:字符串类型:CHAR:VARCHAR:TINYBLOB:TINYTEXT:BLOB:TEXT:MEDIUMBLOB:MEDIUMTEXT:LONGBLOB:LONGTEXT:7.创建数据表:CREATE TABLE IF NOT EXISTS `t_order`( `id` INT(10) UNSIGNED AUTO_INCREMENT,`title` VARCHAR(100) NOT NULL,PRIMARY KEY(`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;8.删除数据表:DROP TABLE t_order;9.insert 插入:插入一条数据:INSERT INTO t_order(title)VALUES('手机');INSERT 插入多条数据:INSERT INTO t_order(title)VALUES('笔记本'),('平板电脑');10.select 查询:所有字段查询:SELECT * FROM t_order;某些字段查询:SELECT t_order.id, t_order.title FROM t_order;分页查询:SELECT t_order.title FROM t_order WHERE id LIMIT 1,10 11.where 条件:OR,AND的应用:SELECT * FROM t_order WHERE title ='手机' OR title='笔记本';SELECT * FROM t_order WHERE title ='手机' AND id=2;12.update 更新:UPDATE t_order SET title='苹果手机' WHERE id =2;13.delete 删除:DELETE FROM t_order WHERE id=2;14.like 查询SELECT * FROM t_order WHERE title LIKE '%手机%';SELECT * FROM t_order WHERE title LIKE '_机';14.union 联合查询:连接两个以上的 SELECT 语句合并成一个结果集合SELECT * FROM t_order UNION SELECT * FROM t_user; SELECT * FROM t_order UNION ALL SELECT * FROM t_user;15.order by 排序:升序排序:SELECT * FROM t_order ORDER BY id ASC;降序排序:SELECT * FROM t_order ORDER BY id DESC;16.group by 分组:SELECT title, count(*) as total FROM t_order GROUP BY title;17.join 连接:inner join(内连接) on:获取两个表中字段匹配关系的记录SELECT * FROM t_order o INNER JOIN t_user u ON o.id =u.id;left join(左连接)on:获取左表所有记录,即使右表没有对应匹配的记录SELECT * FROM t_order o LEFT JOIN t_user u ON o.id =u.id;right join(右连接)on:获取右表所有记录,即使左表没有对应匹配的记录SELECT * FROM t_order o RIGHT JOIN t_user u ON o.id =u.id;18.null的处理:null值的判断:SELECT * FROM t_user WHERE name IS NULL;非null值的判断:SELECT * FROM t_user WHERE name IS NOT NULL;19.REGEXP 正则表达式:SELECT * FROM t_order WHERE title REGEXP('手机$'); SELECT * FROM t_order WHERE title REGEXP('^笔');。
php 数据库语句
php 数据库语句PHP是一种广泛用于Web开发的脚本语言。
在PHP中,与数据库交互的功能非常重要。
以下是一些常用的PHP数据库语句,用于查询、插入、更新和删除数据。
1. 查询数据:- SELECT * FROM table_name:从表中检索所有数据。
- SELECT column1, column2 FROM table_name:从表中检索指定列的数据。
- SELECT * FROM table_name WHERE condition:带有条件的数据检索。
- SELECT column1, column2 FROM table_name WHERE condition:带有条件的指定列数据检索。
- SELECT DISTINCT column FROM table_name:检索唯一值。
2. 插入数据:- INSERT INTO table_name (column1, column2) VALUES (value1, value2):插入数据到表中指定列。
- INSERT INTO table_name VALUES (value1, value2):插入数据到表中所有列。
3. 更新数据:- UPDATE table_name SET column = value WHERE condition:更新满足条件的数据。
4. 删除数据:- DELETE FROM table_name WHERE condition:删除满足条件的数据。
5. 创建数据库和表:- CREATE DATABASE database_name:创建数据库。
- CREATE TABLE table_name (column1 datatype, column2 datatype):创建数据表。
6. 修改表结构:- ALTER TABLE table_name ADD column datatype:向表中添加新列。
数据库基本查询语句
数据库基本查询语句1. SELECT语句:用于从数据库中选取所需的数据,可以指定要选择的列或表中所有列。
例如:SELECT * FROM table_name;2. WHERE语句:用于从表中选择满足条件的行。
例如:SELECT * FROM table_name WHERE column_name = 'value';3. ORDER BY语句:用于按指定列对结果集进行排序。
例如:SELECT * FROM table_name ORDER BY column_name ASC;4. GROUP BY语句:用于将结果集按指定列分组,通常与聚合函数一起使用。
例如:SELECT column_name, COUNT(*) FROM table_name GROUP BY column_name;5. JOIN语句:用于将两个或多个表中的行连接起来。
例如:SELECT * FROM table1 JOIN table2 ON table1.column_name = table2.column_name;6. UNION语句:用于将两个或多个SELECT语句的结果集合并成一个结果集。
例如:SELECT column_name FROM table1 UNION SELECT column_name FROM table2;7. DISTINCT语句:用于返回唯一不同的值。
例如:SELECT DISTINCT column_name FROM table_name;8. LIMIT语句:用于限制结果集中返回的行数。
例如:SELECT * FROM table_name LIMIT 10;9. COUNT函数:用于返回满足条件的行数。
例如:SELECT COUNT(*) FROM table_name WHERE column_name = 'value';10. AVG函数:用于计算指定列的平均值。
数据库常见语句
数据库常见语句1. “哎呀,那查询语句不就是在数据库里找宝藏嘛!比如说,你想知道某个班级里所有学生的成绩,就可以用查询语句‘SELECT * FROM students WHERE class = '一班'' 来找到啦!”2. “嘿,插入语句就像是给数据库这个大仓库里添加新货物呀!像要添加一个新学生的信息,就用‘INSERT INTO students (name, age) VALUES ('小明', 10)',多简单!”3. “哇塞,更新语句那可是改变数据库内容的利器啊!要是发现某个学生的年龄写错了,就可以用‘UPDATE students SET age = 11 W HERE name = '小明''来改正,是不是很神奇?”4. “哟呵,删除语句可得小心用呀,这就像从数据库里清理掉不要的东西一样!比如‘DELETE FROM students WHERE name = '已经退学的学生'',可别删错啦!”5. “嘿呀,连接语句不就是把不同的表像拼图一样拼起来嘛!比如想知道学生的成绩和对应的课程,就用连接语句把学生表和课程成绩表连起来呀!”6. “哇哦,聚合函数就像是把一堆数据浓缩成一个精华呀!像计算所有学生的平均年龄,就用 AVG 这个聚合函数,厉害吧!”7. “哎呀呀,子查询那可是嵌套在里面的小惊喜呀!比如先找出成绩大于 90 分的学生,再从这些学生里找年龄最小的,就得靠子查询啦!”8. “嘿哟,排序语句就是给数据排排队嘛!想让学生按照成绩从高到低排,就用‘ORDER BY score DESC',多直观!”9. “哇,索引就像给数据库加了个快速通道呀!能让查询速度蹭蹭涨!”10. “哈哈,视图不就是给数据库做了个定制的窗口嘛!可以按照自己想要的方式展示数据呢!”。
数据库常用语句
一、基础1、说明:创建数据库create database database-name2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建备份数据的 deviceuse masterexec sp_addumpdevice 'disk', 'testback', 'c:\mssql7backup\mynwind_1. dat'--- 开始备份backup database pubs to testback4、说明:创建新表create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)根据已有的表创建新表:a:create table tab_new like tab_old (使用旧表创建新表)b:create table tab_new as select col1,col2… from tab_old definition only5、说明:删除新表drop table tabname6、说明:增加一个列alter table tabname add column col type注:列增加后将不能删除。
db2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。
7、说明:添加主键:alter table tabname add primary key(col)说明:删除主键: alter table tabname drop primary key(col)8、说明:创建索引:create [unique] index idxname on tabname(col….)删除索引:drop index idxname注:索引是不可更改的,想更改必须删除重新建。
9、说明:创建视图:create view viewname as select statement删除视图:drop view viewname10、说明:几个简单的基本的sql语句选择:select * from table1 where 范围插入:insert into table1(field1,field2) values(value1,value2)删除:delete from table1 where 范围更新:update table1 set field1=value1 where 范围查找:select * from table1 where field1 like ’%value1%’ ---like的语法很精妙,查资料!排序:select * from table1 order by field1,field2 [desc]总数:select count as totalcount from table1求和:select sum(field1) as sumvalue from table1平均:select avg(field1) as avgvalue from table1最大:select max(field1) as maxvalue from table1最小:select min(field1) as minvalue from table111、说明:几个高级查询运算词a:union 运算符union 运算符通过组合其他两个结果表(例如 table1 和 table2)并消去表中任何重复行而派生出一个结果表。
数据库SQL查询语句大全
经典SQL查询语句大全一、基础1、说明:创建数据库CREATE DATABASE database-name2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建备份数据的 deviceUSE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.d at'--- 开始备份BACKUP DATABASE pubs TO testBack4、说明:创建新表create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)根据已有的表创建新表:A:create table tab_new like tab_old (使用旧表创建新表)B:create table tab_new as select col1,col2… from tab_old d efinition only5、说明:删除新表drop table tabname6、说明:增加一个列Alter table tabname add column col type注:列增加后将不能删除。
DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。
7、说明:添加主键:Alter table tabname add primary key(col)说明:删除主键: Alter table tabname drop primary key(col) 8、说明:创建索引:create [unique] index idxname on tabname(col….)删除索引:drop index idxname注:索引是不可更改的,想更改必须删除重新建。
db2数据库常用语句
db2数据库常用语句【db2数据库常用语句】是一个涉及DB2数据库的常用查询语句和操作语句集合。
在以下文章中,我将逐步回答关于DB2数据库常用语句的问题,以帮助读者更深入了解和使用DB2数据库。
第一部分:介绍DB2数据库和SQL语言首先,让我们了解一下DB2数据库和SQL语言。
DB2是IBM公司开发的一种关系型数据库管理系统(RDBMS),已经成为很多企业和组织中使用得最广泛的数据库之一。
它支持SQL(结构化查询语言),这是一种用于管理数据库的通用语言。
第二部分:DB2数据库常用查询语句在DB2数据库中,我们可以使用各种查询语句来检索和过滤数据。
以下是一些常用的查询语句:1. SELECT语句:SELECT语句用于从数据库中检索数据。
例如,SELECT * FROM 表名将返回该表中的所有行和列。
2. WHERE子句:WHERE子句用于添加筛选条件到查询语句中。
例如,SELECT * FROM 表名WHERE 列名= 值将只返回符合条件的行。
3. ORDER BY语句:ORDER BY语句用于对结果进行排序。
例如,SELECT * FROM 表名ORDER BY 列名ASC将按升序对结果集进行排序。
4. GROUP BY语句:GROUP BY语句用于根据一个或多个列对结果进行分组。
例如,SELECT 列名FROM 表名GROUP BY 列名将返回每个不同值的分组。
第三部分:DB2数据库常用操作语句除了查询语句,我们还可以使用操作语句来修改和管理数据库。
以下是一些常用的操作语句:1. INSERT语句:INSERT语句用于向数据库中插入新的行。
例如,INSERT INTO 表名(列名1, 列名2, ...) VALUES (值1, 值2, ...)将在指定的列中插入新的值。
2. UPDATE语句:UPDATE语句用于更新数据库中的现有数据。
例如,UPDATE 表名SET 列名= 新值WHERE 列名= 条件将更新满足条件的行中的列的值。
sql 语言最常用的语句
sql 语言最常用的语句SQL语言是一种用于管理和操作关系型数据库的标准化语言。
它提供了一系列的命令和语句,用于查询、插入、更新和删除数据。
以下是SQL语言中最常用的十个语句:1. SELECT语句:用于从数据库中查询数据。
可以选择特定的列或所有的列,并可以设置条件来过滤数据。
示例:SELECT * FROM table_name WHERE condition;2. INSERT语句:用于向数据库表中插入新的数据记录。
示例:INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...);3. UPDATE语句:用于更新数据库表中的数据记录。
可以更新特定的列或所有的列,并可以设置条件来过滤要更新的数据。
示例:UPDATE table_name SET column1 = value1, column2 = value2 WHERE condition;4. DELETE语句:用于从数据库表中删除数据记录。
可以设置条件来过滤要删除的数据。
示例:DELETE FROM table_name WHERE condition;5. CREATE TABLE语句:用于创建新的数据库表。
示例:CREATE TABLE table_name (column1 datatype, column2 datatype, ...);6. ALTER TABLE语句:用于修改数据库表的结构,例如添加或删除列。
示例:ALTER TABLE table_name ADD column_name datatype;7. DROP TABLE语句:用于删除数据库表。
示例:DROP TABLE table_name;8. JOIN语句:用于在多个表之间建立关联,并基于关联条件查询数据。
示例:SELECT * FROM table1 JOIN table2 ON table1.column_name = table2.column_name;9. GROUP BY语句:用于对查询结果进行分组,并对每个组进行聚合操作。
SQL数据库语句大全大全(完全整理版)
SQL语句大全--语句功能--数据操作SELECT --从数据库表中检索数据行和列INSERT --向数据库表添加新数据行DELETE --从数据库表中删除数据行UPDATE --更新数据库表中的数据-数据定义CREATE TABLE --创建一个数据库表DROP TABLE --从数据库中删除表ALTER TABLE --修改数据库表结构CREATE VIEW --创建一个视图DROP VIEW --从数据库中删除视图CREATE INDEX --为数据库表创建一个索引DROP INDEX --从数据库中删除索引CREATE PROCEDURE --创建一个存储过程DROP PROCEDURE --从数据库中删除存储过程CREATE TRIGGER --创建一个触发器DROP TRIGGER --从数据库中删除触发器CREATE SCHEMA --向数据库添加一个新模式DROP SCHEMA --从数据库中删除一个模式CREATE DOMAIN --创建一个数据值域ALTER DOMAIN --改变域定义DROP DOMAIN --从数据库中删除一个域--数据控制GRANT --授予用户访问权限DENY --拒绝用户访问REVOKE --解除用户访问权限--事务控制COMMIT --结束当前事务ROLLBACK --中止当前事务SET TRANSACTION --定义当前事务数据访问特征--程序化SQLDECLARE --为查询设定游标EXPLAN --为查询描述数据访问计划OPEN --检索查询结果打开一个游标FETCH --检索一行查询结果CLOSE --关闭游标PREPARE --为动态执行准备SQL 语句EXECUTE --动态地执行SQL 语句DESCRIBE --描述准备好的查询---局部变量declare @id char(10)--set @id = '10010001'select @id = '10010001'---全局变量---必须以@@开头--IF ELSEdeclare @x int @y int @z intselect @x = 1 @y = 2 @z=3if @x > @yprint 'x > y' --打印字符串'x > y'else if @y > @zprint 'y > z'else print 'z > y'--CASEuse panguupdate employeeset e_wage =casewhen job_level = ’1’ then e_wage*1.08 when job_level = ’2’ then e_wage*1.07 when job_level = ’3’ then e_wage*1.06 else e_wage*1.05end--WHILE CONTINUE BREAK declare @x int @y int @c intselect @x = 1 @y=1while @x < 3beginprint @x --打印变量x 的值while @y < 3beginselect @c = 100*@x + @yprint @c --打印变量c 的值select @y = @y + 1endselect @x = @x + 1select @y = 1end--WAITFOR--例等待1 小时2 分零3 秒后才执行SELECT 语句waitfor delay ’01:02:03’select * from employee--例等到晚上11 点零8 分后才执行SELECT 语句wa itfor time ’23:08:00’select * from employee***SELECT***select *(列名) from table_name(表名) where column_name operator value ex:(宿主)select * from stock_information where stockid = str(nid)stockname = 'str_name'stockname like '% find this %'stockname like '[a-zA-Z]%' --------- ([]指定值的范围)stockname like '[^F-M]%' --------- (^排除指定范围)--------- 只能在使用like关键字的where子句中使用通配符)or stockpath = 'stock_path'or stocknumber < 1000and stockindex = 24not stock*** = 'man'stocknumber between 20 and 100stocknumber in(10,20,30)order by stockid desc(asc) --------- 排序,desc-降序,asc-升序order by 1,2 --------- by列号stockname = (select stockname from stock_information where stockid = 4)--------- 子查询--------- 除非能确保内层select只返回一个行的值,--------- 否则应在外层where子句中用一个in限定符select distinct column_name form table_name --------- distinct指定检索独有的列值,不重复select stocknumber ,"stocknumber + 10" = stocknumber + 10 from table_nameselect stockname , "stocknumber" = count(*) from table_name group by stockname--------- group by 将表按行分组,指定列中有相同的值having count(*) = 2 --------- having选定指定的组select *from table1, table2where table1.id *= table2.id -------- 左外部连接,table1中有的而table2中没有得以null表示table1.id =* table2.id -------- 右外部连接select stockname from table1union [all] ----- union合并查询结果集,all-保留重复行select stockname from table2***insert***insert into table_name (Stock_name,Stock_number) value ("xxx","xxxx")value (select Stockname , Stocknumber from Stock_table2)---value为select语句***update***update table_name set Stockname = "xxx" [where Stockid = 3]Stockname = defaultStockname = nullStocknumber = Stockname + 4***delete***delete from table_name where Stockid = 3truncate table_name ----------- 删除表中所有行,仍保持表的完整性drop table table_name --------------- 完全删除表***alter table*** --- 修改数据库表结构alter table database.owner.table_name add column_name char(2) null .....sp_help table_name ---- 显示表已有特征create table table_name (name char(20), age smallint, lname varchar(30))insert into table_name select ......... ----- 实现删除列的方法(创建新表)alter table table_name drop constraint Stockname_default ---- 删除Stockname的default约束***function(/*常用函数*/)***----统计函数----AVG --求平均值COUNT --统计数目MAX --求最大值MIN --求最小值SUM --求和--AVGuse panguselect avg(e_wage) as dept_avgWagefrom employeegroup by dept_id--MAX--求工资最高的员工姓名use panguselect e_namefrom employeewhere e_wage =(select max(e_wage)from employee)--STDEV()--STDEV()函数返回表达式中所有数据的标准差--STDEVP()--STDEVP()函数返回总体标准差--VAR()--VAR()函数返回表达式中所有值的统计变异数--VARP()--VARP()函数返回总体变异数----算术函数----/***三角函数***/SIN(float_expression) --返回以弧度表示的角的正弦COS(float_expression) --返回以弧度表示的角的余弦TAN(float_expression) --返回以弧度表示的角的正切COT(float_expression) --返回以弧度表示的角的余切/***反三角函数***/ASIN(float_expression) --返回正弦是FLOAT 值的以弧度表示的角ACOS(float_expression) --返回余弦是FLOAT 值的以弧度表示的角ATAN(float_expression) --返回正切是FLOAT 值的以弧度表示的角ATAN2(float_expression1,float_expression2)--返回正切是float_expression1 /float_expres-sion2的以弧度表示的角DEGREES(numeric_expression)--把弧度转换为角度返回与表达式相同的数据类型可为--INTEGER/MONEY/REAL/FLOAT 类型RADIANS(numeric_expression) --把角度转换为弧度返回与表达式相同的数据类型可为--INTEGER/MONEY/REAL/FLOAT 类型EXP(float_expression) --返回表达式的指数值LOG(float_expression) --返回表达式的自然对数值LOG10(float_expression)--返回表达式的以10 为底的对数值SQRT(float_expression) --返回表达式的平方根/***取近似值函数***/CEILING(numeric_expression) --返回>=表达式的最小整数返回的数据类型与表达式相同可为--INTEGER/MONEY/REAL/FLOAT 类型FLOOR(numeric_expression) --返回<=表达式的最小整数返回的数据类型与表达式相同可为--INTEGER/MONEY/REAL/FLOAT 类型ROUND(numeric_expression) --返回以integer_expression 为精度的四舍五入值返回的数据--类型与表达式相同可为INTEGER/MONEY/REAL/FLOAT 类型ABS(numeric_expression) --返回表达式的绝对值返回的数据类型与表达式相同可为--INTEGER/MONEY/REAL/FLOAT 类型SIGN(numeric_expression) --测试参数的正负号返回0 零值1 正数或-1 负数返回的数据类型--与表达式相同可为INTEGER/MONEY/REAL/FLOAT 类型PI() --返回值为π 即3.1415926535897936RAND([integer_expression]) --用任选的[integer_expression]做种子值得出0-1 间的随机浮点数----字符串函数----ASCII() --函数返回字符表达式最左端字符的ASCII 码值CHAR() --函数用于将ASCII 码转换为字符--如果没有输入0 ~ 255 之间的ASCII 码值CHAR 函数会返回一个NULL 值LOWER() --函数把字符串全部转换为小写UPPER() --函数把字符串全部转换为大写STR() --函数把数值型数据转换为字符型数据LTRIM() --函数把字符串头部的空格去掉RTRIM() --函数把字符串尾部的空格去掉LEFT(),RIGHT(),SUBSTRING() --函数返回部分字符串CHARINDEX(),PATINDEX() --函数返回字符串中某个指定的子串出现的开始位置SOUNDEX() --函数返回一个四位字符码--SOUNDEX函数可用来查找声音相似的字符串但SOUNDEX函数对数字和汉字均只返回0 值DIFFERENCE() --函数返回由SOUNDEX 函数返回的两个字符表达式的值的差异--0 两个SOUNDEX 函数返回值的第一个字符不同--1 两个SOUNDEX 函数返回值的第一个字符相同--2 两个SOUNDEX 函数返回值的第一二个字符相同--3 两个SOUNDEX 函数返回值的第一二三个字符相同--4 两个SOUNDEX 函数返回值完全相同QUOTENAME() --函数返回被特定字符括起来的字符串/*select quotename('abc', '{') quotename('abc')运行结果如下----------------------------------{{abc} [abc]*/REPLICATE() --函数返回一个重复character_expression 指定次数的字符串/*select replicate('abc', 3) replicate( 'abc', -2)运行结果如下----------- -----------abcabcabc NULL*/REVERSE() --函数将指定的字符串的字符排列顺序颠倒REPLACE() --函数返回被替换了指定子串的字符串/*select replace('abc123g', '123', 'def')运行结果如下----------- -----------abcdefg*/SPACE() --函数返回一个有指定长度的空白字符串STUFF() --函数用另一子串替换字符串指定位置长度的子串----数据类型转换函数----CAST() 函数语法如下CAST() (<expression> AS <data_ type>[ length ])CONVERT() 函数语法如下CONVERT() (<data_ type>[ length ], <expression> [, style])select cast(100+99 as char) convert(varchar(12), getdate())运行结果如下------------------------------ ------------199 Jan 15 2000----日期函数----DAY() --函数返回date_expression 中的日期值MONTH() --函数返回date_expression 中的月份值YEAR() --函数返回date_expression 中的年份值DATEADD(<datepart> ,<number> ,<date>)--函数返回指定日期date 加上指定的额外日期间隔number 产生的新日期DATEDIFF(<datepart> ,<number> ,<date>)--函数返回两个指定日期在datepart 方面的不同之处DATENAME(<datepart> , <date>) --函数以字符串的形式返回日期的指定部分DATEPART(<datepart> , <date>) --函数以整数值的形式返回日期的指定部分GETDATE() --函数以DATETIME 的缺省格式返回系统当前的日期和时间----系统函数----APP_NAME() --函数返回当前执行的应用程序的名称COALESCE() --函数返回众多表达式中第一个非NULL 表达式的值COL_LENGTH(<'table_name'>, <'column_name'>) --函数返回表中指定字段的长度值COL_NAME(<table_id>, <column_id>) --函数返回表中指定字段的名称即列名DATALENGTH() --函数返回数据表达式的数据的实际长度DB_ID(['database_name']) --函数返回数据库的编号DB_NAME(database_id) --函数返回数据库的名称HOST_ID() --函数返回服务器端计算机的名称HOST_NAME() --函数返回服务器端计算机的名称IDENTITY(<data_type>[, seed increment]) [AS column_name])--IDENTITY() 函数只在SELECT INTO 语句中使用用于插入一个identity column列到新表中/*select identity(int, 1, 1) as column_nameinto newtablefrom oldtable*/ISDATE() --函数判断所给定的表达式是否为合理日期ISNULL(<check_expression>, <replacement_value>) --函数将表达式中的NULL 值用指定值替换ISNUMERIC() --函数判断所给定的表达式是否为合理的数值NEWID() --函数返回一个UNIQUEIDENTIFIER 类型的数值NULLIF(<expression1>, <expression2>)--NULLIF 函数在expression1 与expression2 相等时返回NULL 值若不相等时则返回expression1 的值sql中的保留字action add aggregate allalter after and asasc avg avg_row_length auto_incrementbetween bigint bit binaryblob bool both bycascade case char characterchange check checksum columncolumns comment constraint createcross current_date current_time current_timestampdata database databases datedatetime day day_hour day_minuteday_second dayofmonth dayofweek dayofyeardec decimal default delayeddelay_key_write delete desc describedistinct distinctrow double dropend else escape escapedenclosed enum explain existsfields file first floatfloat4 float8 flush foreignfrom for full functionglobal grant grants grouphaving heap high_priority hourhour_minute hour_second hosts identifiedignore in index infileinner insert insert_id intinteger interval int1 int2int3 int4 int8 intoif is isam joinkey keys kill last_insert_idleading left length likelines limit load locallock logs long longbloblongtext low_priority max max_rowsmatch mediumblob mediumtext mediumintmiddleint min_rows minute minute_secondmodify month monthname myisamnatural numeric no notnull on optimize optionoptionally or order outeroutfile pack_keys partial passwordprecision primary procedure processprocesslist privileges read realreferences reload regexp renamereplace restrict returns revokerlike row rows secondselect set show shutdownsmallint soname sql_big_tables sql_big_selectssql_low_priority_updates sql_log_off sql_log_update sql_select_limit sql_small_result sql_big_result sql_warnings straight_joinstarting status string tabletables temporary terminated textthen time timestamp tinyblobtinytext tinyint trailing totype use using uniqueunlock unsigned update usagevalues varchar variables varyingvarbinary with write whenwhere year year_month zerofill查看全文常用SQL命令和ASP编程在进行数据库操作时,无非就是添加、删除、修改,这得设计到一些常用的SQL 语句,如下: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 * 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 …) valuess (值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("别名") 获取统的计值,其它函数运用同上。
数据库语句大全
数据库语句大全
数据库语句是指用于操作数据库的命令或语句,包括数据查询、插入、更新、删除等操作。
以下是常见的数据库语句:1.SELECT:用于查询数据
表中的数据。
2.INSERT:用于向数据表中插入新的数据。
3.UPDATE:用于
更新数据表中的数据。
4.DELETE:用于删除数据表中的数据。
5.CREATE:
用于创建新的数据表、视图、索引等。
6.ALTER:用于修改数据表的结构,如添加、删除、修改列等。
7.DROP:用于删除数据表、视图、索引等。
8.TRUNCATE:用于清空数据表中的数据。
9.JOIN:用于连接多个数据表,
进行数据查询。
10.UNION:用于合并多个查询结果集。
11.GROUPBY:用于
对查询结果进行分组。
12.ORDERBY:用于对查询结果进行排序。
13.LIMIT:用于限制查询结果的数量。
14.WHERE:用于指定查询条件。
15.HAVING:
用于指定分组后的查询条件。
16.IN:用于指定多个值作为查询条件。
17.LIKE:用于模糊查询。
18.EXISTS:用于判断是否存在符合条件的数据。
19.NOT:用于否定查询条件。
20.COUNT:用于统计查询结果的数量。
以上
是常见的数据库语句,不同的数据库系统可能会有一些特定的语句或语法。
在使用数据库时,需要根据具体的情况选择合适的语句来操作数据。
常见sql语句
常见sql语句SQL(Structured Query Language)是一种用于管理和操作关系型数据库的语言。
以下是一些常见的 SQL 语句:1.SELECT:用于从数据库中检索数据。
SELECT 列名1, 列名2, ... FROM 表名 WHERE 条件;2.INSERT INTO:用于向数据库表中插入数据。
INSERT INTO 表名 (列名1, 列名2, ...) VALUES (值1, 值2, ...);3.UPDATE:用于更新数据库表中的数据。
UPDATE 表名 SET 列名1 = 值1, 列名2 = 值2 WHERE 条件;4.DELETE FROM:用于从数据库表中删除数据。
DELETE FROM 表名 WHERE 条件;5.CREATE TABLE:用于创建新的数据库表。
CREATE TABLE 表名 (列名1 数据类型1,列名2 数据类型2,...);6.ALTER TABLE:用于修改数据库表的结构。
ALTER TABLE 表名 ADD COLUMN 列名数据类型;ALTER TABLE 表名 MODIFY COLUMN 列名新数据类型;ALTER TABLE 表名 DROP COLUMN 列名;7.SELECT DISTINCT:用于获取唯一的值。
SELECT DISTINCT 列名 FROM 表名;8.ORDER BY:用于根据指定的列对结果进行排序。
SELECT 列名1, 列名2, ... FROM 表名 ORDER BY 列名1 ASC/DESC;9.GROUP BY:用于对结果进行分组统计。
SELECT 列名1, COUNT(列名2) FROM 表名 GROUP BY 列名1; 10.JOIN:用于将多个表的行联接。
SELECT 列名1, 列名2 FROM 表名1 JOIN 表名2 ON 表名1.列名 = 表名2.列名;11.WHERE:用于筛选满足特定条件的数据。
(word完整版)数据库SQL经典语句(包含几乎所有的经典操作语言)
1、说明:复制表(只复制结构,源表名:a 新表名:b)(Access可用)法一:select * into b from a where 1〈〉1法二:select top 0 * into b from a2、说明:拷贝表(拷贝数据,源表名:a 目标表名:b) (Access可用)insert into b(a, b, c) select d,e,f from b;3、说明:跨数据库之间表的拷贝(具体数据使用绝对路径) (Access可用)insert into b(a, b, c) select d,e,f from b in ‘具体数据库' where 条件例子:。
.from b in ’”&Server.MapPath(”。
”)&”\data.mdb” &"’ where.。
4、说明:子查询(表名1:a 表名2:b)select a,b,c from a where a IN (select d from b )或者: select a,b,c from a where a IN (1,2,3)5、说明:显示文章、提交人和最后回复时间select a.title,a。
username,b。
adddate from table a,(select max(adddate) adddate from table where table。
title=a。
title) b6、说明:外连接查询(表名1:a 表名2:b)select a.a, a.b, a。
c, b。
c, b.d, b。
f from a LEFT OUT JOIN b ON a.a = b.c7、说明:在线视图查询(表名1:a )select * from (SELECT a,b,c FROM a) T where t.a 〉 1;8、说明:between的用法,between限制查询数据范围时包括了边界值,not between不包括select * from table1 where time between time1 and time2select a,b,c, from table1 where a not between 数值1 and 数值29、说明:in 的使用方法select * from table1 where a [not] in (‘值1',’值2',’值4',’值6’)10、说明:两张关联表,删除主表中已经在副表中没有的信息delete from table1 where not exists ( select * from table2 where table1.field1=table2。
数据库基本SQL语句大全【范本模板】
数据库基本SQL语句大全数据库基本--—-SQL语句大全一、基础1、说明:创建数据库Create DATABASE database—name2、说明:删除数据库drop database dbname3、说明:备份sql server—-- 创建备份数据的deviceUSE masterEXEC sp_addumpdevice 'disk', ’testBack’, 'c:\mssql7backup\MyNwind_1。
dat’———开始备份BACKUP DATABASE pubs TO testBack4、说明:创建新表create table tabname(col1 type1 [not null] [primary key],col2 ty pe2 [not null],。
.)根据已有的表创建新表:A:create table tab_new like tab_old (使用旧表创建新表)B:create table tab_new as select col1,col2…from tab_old defin ition only5、说明:删除新表drop table tabname6、说明:增加一个列Alter table tabname add column col type注:列增加后将不能删除。
DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。
7、说明:添加主键: Alter table tabname add primary key(col)说明:删除主键: Alter table tabname drop primary key(col)8、说明:创建索引:create [unique]index idxname on tabname(col….)删除索引:drop index idxname注:索引是不可更改的,想更改必须删除重新建。
数据库基本SQL语句大全
数据库基本_SQL语句大全学会数据库是很实用D~~记录一些常用的sql语句...有入门有提高有见都没见过的...好全...收藏下...其实一般用的就是查询,插入,删除等语句而已....但学学存储过程是好事...以后数据方面的东西就不用在程序里搞喽..而且程序与数据库只要一个来回通讯就可以搞定所有数据的操作....一、基础1、说明:创建数据库Create DATABASE database-name2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建备份数据的deviceUSE masterEXEC sp_addumpdevice ‘disk‘, ‘testBack‘, ‘c:\mssql7backup\‘--- 开始备份BACKUP DATABASE pubs TO testBack4、说明:创建新表create table tabnamecol1 type1 not null primary key,col2 type2 not null,..根据已有的表创建新表:A:create table tab_new like tab_old 使用旧表创建新表B:create table tab_new as select col1,col2… from tab_old definition only 5、说明:删除新表drop table tabname6、说明:增加一个列Alter table tabname add column col type注:列增加后将不能删除;DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度;7、说明:添加主键:Alter table tabname add primary keycol说明:删除主键:Alter table tabname drop primary keycol8、说明:创建索引:create unique index idxname on tabnamecol….删除索引:drop index idxname注:索引是不可更改的,想更改必须删除重新建;9、说明:创建视图:create view viewname as select statement删除视图:drop view viewname10、说明:几个简单的基本的sql语句选择:select from table1 where 范围插入:insert into table1field1,field2 valuesvalue1,value2删除:delete from table1 where 范围更新:update table1 set field1=value1 where 范围查找:select from table1 where field1 like ’%value1%’ ---like的语法很精妙,查资料排序:select from table1 order by field1,field2 desc总数:select count as totalcount from table1求和:select sumfield1 as sumvalue from table1平均:select avgfield1 as avgvalue from table1最大:select maxfield1 as maxvalue from table1最小:select minfield1 as minvalue from table111、说明:几个高级查询运算词A:UNION 运算符UNION 运算符通过组合其他两个结果表例如TABLE1 和TABLE2并消去表中任何重复行而派生出一个结果表;当ALL 随UNION 一起使用时即UNION ALL,不消除重复行;两种情况下,派生表的每一行不是来自TABLE1 就是来自TABLE2;B:EXCEPT 运算符EXCEPT 运算符通过包括所有在TABLE1 中但不在TABLE2 中的行并消除所有重复行而派生出一个结果表;当ALL 随EXCEPT 一起使用时EXCEPT ALL,不消除重复行;C:INTERSECT 运算符INTERSECT 运算符通过只包括TABLE1 和TABLE2 中都有的行并消除所有重复行而派生出一个结果表;当ALL 随INTERSECT 一起使用时INTERSECT ALL,不消除重复行;注:使用运算词的几个查询结果行必须是一致的;12、说明:使用外连接A、left outer join:左外连接左连接:结果集几包括连接表的匹配行,也包括左连接表的所有行;SQL: select , , , , , from a LEFT OUT JOIN b ON =B:right outer join:右外连接右连接:结果集既包括连接表的匹配连接行,也包括右连接表的所有行;C:full outer join:全外连接:不仅包括符号连接表的匹配行,还包括两个连接表中的所有记录;二、提升1、说明:复制表只复制结构,源表名:a 新表名:b Access可用法一:select into b from a where 1<>1法二:select top 0 into b from a2、说明:拷贝表拷贝数据,源表名:a 目标表名:b Access可用insert into ba, b, c select d,e,f from b;3、说明:跨数据库之间表的拷贝具体数据使用绝对路径Access可用insert into ba, b, c select d,e,f from b in ‘具体数据库’ where 条件例子:..from b in ‘"&"."&"\" &"‘ where..4、说明:子查询表名1:a 表名2:bselect a,b,c from a where a IN select d from b 或者: select a,b,c from a where a IN 1,2,35、说明:显示文章、提交人和最后回复时间select ,, from table a,select maxadddate adddate from table where = b6、说明:外连接查询表名1:a 表名2:bselect , , , , , from a LEFT OUT JOIN b ON =7、说明:在线视图查询表名1:aselect from Select a,b,c FROM a T where > 1;8、说明:between的用法,between限制查询数据范围时包括了边界值,not between不包括select from table1 where time between time1 and time2select a,b,c, from table1 where a not between 数值1 and 数值29、说明:in 的使用方法select from table1 where a not in ‘值1’,’值2’,’值4’,’值6’10、说明:两张关联表,删除主表中已经在副表中没有的信息delete from table1 where not exists select from table2 where =11、说明:四表联查问题:select from a left inner join b on = right inner join c on = inner join d on = where .....12、说明:日程安排提前五分钟提醒SQL: select from 日程安排where datediff‘minute‘,f开始时间,getdate>513、说明:一条sql 语句搞定数据库分页select top 10 b. from select top 20 主键字段,排序字段from 表名order by 排序字段desc a,表名b where b.主键字段= a.主键字段order by a.排序字段14、说明:前10条记录select top 10 form table1 where 范围15、说明:选择在每一组b值相同的数据中对应的a最大的记录的所有信息类似这样的用法可以用于论坛每月排行榜,每月热销产品分析,按科目成绩排名,等等.select a,b,c from tablename ta where a=select maxa from tablename tb where =16、说明:包括所有在TableA 中但不在TableB和TableC 中的行并消除所有重复行而派生出一个结果表select a from tableA except select a from tableB except select a from tableC 17、说明:随机取出10条数据select top 10 from tablename order by newid18、说明:随机选择记录select newid19、说明:删除重复记录Delete from tablename where id not in select maxid from tablename group by col1,col2,...20、说明:列出数据库里所有的表名select name from sysobjects where type=‘U‘21、说明:列出表里的所有的sele ct name from syscolumns where id=object_id‘TableName‘22、说明:列示type、vender、pcs字段,以type字段排列,case可以方便地实现多重选择,类似select 中的case;select type,sumcase vender when ‘A‘ then pcs else 0 end,sumcase vender when ‘C‘ then pcs else 0 end,sumcase vender when ‘B‘ then pcs else 0 end FROM tablename group by type显示结果:type vender pcs电脑A 1电脑A 1光盘B 2光盘A 2手机B 3手机C 323、说明:初始化表table1TRUNCATE TABLE table124、说明:选择从10到15的记录select top 5 from select top 15 from table order by id asc table_别名order by id desc三、技巧1、1=1,1=2的使用,在SQL语句组合时用的较多“where 1=1” 是表示选择全部“where 1=2”全部不选,如:if strWhere =‘beginset strSQL = ‘select count as Total from ‘ + tblName + ‘ where ‘ + strWhere endelsebeginset strSQL = ‘select count as Total from ‘ + tblName + ‘‘end我们可以直接写成set strSQ L = ‘select count as Total from ‘ + tblName + ‘ where 1=1 安定‘+ strWhere2、收缩数据库--重建索引DBCC REINDEXDBCC INDEXDEFRAG--收缩数据和日志DBCC SHRINKDBDBCC SHRINKFILE3、压缩数据库dbcc shrinkdatabasedbname4、转移数据库给新用户以已存在用户权限exec sp_change_users_login ‘update_one‘,‘newname‘,‘oldname‘go5、检查备份集RESTORE VERIFYONLY from disk=‘E:\‘6、修复数据库Alter DATABASE dvbbs SET SINGLE_USERGODBCC CHECKDB‘dvbbs‘,repair_allow_data_loss WITH TABLOCKGOAlter DATABASE dvbbs SET MULTI_USERGO7、日志清除SET NOCOUNT ONDECLARE LogicalFileName sysname,MaxMinutes INT,NewSize INTUSE tablename -- 要操作的数据库名Select LogicalFileName = ‘tablename_log‘, -- 日志文件名MaxMinutes = 10, -- Limit on time allowed to wrap log.NewSize = 1 -- 你想设定的日志文件的大小M-- Setup / initializeDECLARE OriginalSize intSelect OriginalSize = sizeFROM sysfilesWhere name = LogicalFileNameSelect ‘Original Size of ‘ + db_name + ‘ LOG is ‘ + CONVERTVARCHAR30,OriginalSize + ‘ 8K pages or ‘ + CONVERTVARCHAR30,OriginalSize8/1024 + ‘MB‘FROM sysfilesWhere name = LogicalFileNameCreate TABLE DummyTransDummyColumn char 8000 not nullDECLARE Counter INT,StartTime DATETIME,TruncLog VARCHAR255Select StartTime = GETDATE,TruncLog = ‘BACKUP LOG ‘ + db_name + ‘ WITH TRUNCATE_ONLY‘DBCC SHRINKFILE LogicalFileName, NewSizeEXEC TruncLog-- Wrap the log if necessary.WHILE MaxMinutes > DATEDIFF mi, StartTime, GETDATE -- time has not expiredAND OriginalSize = Select size FROM sysfiles Where name = LogicalFileNameAND OriginalSize 8 /1024 > NewSizeBEGIN -- Outer loop.Select Counter = 0WHILE Counter < OriginalSize / 16 AND Counter < 50000 BEGIN -- updateInsert DummyTrans VALUES ‘Fill Log‘Delete DummyTransSelect Counter = Counter + 1ENDEXEC TruncLogENDSelect ‘Final Size of ‘ + db_name + ‘ LOG is ‘ + CONVERTVARCHAR30,size + ‘ 8K pages or ‘ + CONVERTVARCHAR30,size8/1024 + ‘MB‘FROM sysfilesWhere name = LogicalFileNameDrop TABLE DummyTransSET NOCOUNT OFF8、说明:更改某个表exec sp_changeobjectowner ‘tablename‘,‘dbo‘9、存储更改全部表Create PROCEDUREOldOwner as NVARCHAR128,NewOwner as NVARCHAR128ASDECLARE Name as NVARCHAR128DECLARE Owner as NVARCHAR128DECLARE OwnerName as NVARCHAR128 DECLARE curObject CURSOR FORselect ‘Name‘ = name,‘Owner‘ = user_nameuidfrom sysobjectswhere user_nameuid=OldOwnerorder by nameOPEN curObjectFETCH NEXT FROM curObject INTO Name, Owner WHILEFETCH_STATUS=0BEGINif Owner=OldOwnerbeginset OwnerName = OldOwner + ‘.‘ + rtrimNameexec sp_changeobjectowner OwnerName, NewOwnerend-- select name,NewOwner,OldOwnerFETCH NEXT FROM curObject INTO Name, Owner ENDclose curObjectdeallocate curObjectGO10、SQL SERVER中直接循环写入数据declare i intset i=1while i<30begininsert into test userid valuesiset i=i+1end。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SQL常用语句一览
(1)数据记录筛选:
sql="select*from数据表where字段名=字段值orderby字段名[desc]"
sql="select*from数据表where字段名like'%字段值%'orderby字段名[desc]"
sql="selecttop10*from数据表where字段名orderby字段名[desc]"
sql="select*from数据表where字段名in('值1','值2','值3')"
sql="select*from数据表where字段名between值1and值2"
(2)更新数据记录:
sql="update数据表set字段名=字段值where条件表达式"
sql="update数据表set字段1=值1,字段2=值2……字段n=值nwhere条件表达式" (3)删除数据记录:
sql="deletefrom数据表where条件表达式"
sql="deletefrom数据表"(将数据表所有记录删除)
(4)添加数据记录:
sql="insertinto数据表(字段1,字段2,字段3…)values(值1,值2,值3…)"
sql="insertinto目标数据表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”是指同一字段
例:
setrs=conn.execute("select count(id) as idnum from news")
response.writers("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')"。