下列语句部分是Mssql语句,不可以在access中使用。
SQL分类:
DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)
首先,简要介绍基础语句:
1、说明:创建数据库
CREATE DATABASE database-name
2、说明:删除数据库
drop database dbname
3、说明:备份sql server
--- 创建 备份数据的 device
USE master
EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'
--- 开始 备份
BACKUP DATABASE pubs TO testBack
4、说明:创建新表
create table tabname(col1 type1 [not null] [primary key],col2 type2
…… …… 余下全文
结构化查询语句
1.简单查询
1.1Select语句基本应用
1.1.1查询所有记录
Select * from tab_name
1.1.2查询指定字段的记录
Select field1,field2,….from tab_name
1.1.3带表达式的查询
Select field1,compute(expression) from tab_name
其中expression可以是算术表达式,字符串表达式,字符串常量和函数等。
1.1.4显示列名的带表达式的查询
Select field1, compute(expression)fieldname from tab_name
在表达式compute(expression)后面添加字符串(fieldname)可以作为显示的列名,
中间不用逗号间隔。
1.1.5指定查询路径的查询
Select * from datebase.dbo.tab_name
用于访问其他数据库下的其他用户的数据表,查询路径格式为“数据库名.数据表拥有者名.数据表名”。
1.1.6指定查询结果的查询
Select top n * from tab_name
…… …… 余下全文
SQL Server中常用语句
有关数据库的一写操作:
创建表项就不说了.
CREATE TABLE Student
(Sno CHAR(5) NOT NULL UNIQUE,
Sname CHAR(20),
Ssex CHAR(1),
Sage INT,
Sdept CHAR(15));
插入记录:
insert into Student (Sno,Sname,Ssex,Sdept) values('aaa','mary','f','172');
删除记录:
delete from Student where Sno = 'aaa';
注:只需要删除一个主键就可以了。其他的记录会相应的删除掉。
删除表中一个字段:
ALTER TABLE Student DROP column Ssex; 列名;
修改表中的那一行数据:
原来的记录:
Sno Sname Ssex Sdept
aaa mary f 172
update Student set Sname='mary1', Ssex='m' where Sno='aaa';
…… …… 余下全文
几个简单的基本的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 条件表达式"
…… …… 余下全文
sql中as的用法和一些经典的sql语句
2008-08-21 21:55
总结一些工作中用到或碰到的SQL语句,希望能与大家分享,同时也希望大家能提供更多的精妙SQL语句.....
1、delete table1 from (select * from table2) as t2 where table1.id=t2.id
2、truncate table table1 (不在事务日志中做记录,比delete table快,但不能激活触发器)
3、update table1 set column=column+1 where id=(select id from table2)
4、update table1 set column=column+1 from table1,table2 where table1.id=table2.id
5、select top n [Percent] * from table1 '输出百分比记录
6、select id,column1 * column2 as column from table1 '可算明白as的用法了
…… …… 余下全文
Oracle系列《一》:简单SQL与单行函数
使用scott/tiger用户下的emp表和dept表完成下列练习,表的结构说明如下
emp员工表(empno员工号/ename员工姓名/job工作/mgr上级编号/hiredate受雇日期/sal薪金/comm佣金/deptno部门编号)
dept部门表(deptno部门编号/dname部门名称/loc地点)
工资 = 薪金 + 佣金
登录Oracle数据库
1、sqlplus scott/tiger
2、sqlplus /nolog
SQL>conn scott/tiger
若是使用SYS的账号进行登录的话,则使用以下语句
SQL>conn / as sysdba
【1】EMP表内容查询
SQL> SELECT * FROM emp;
出错,原因是没有找到该表,因为该表时SCOTT用户的表,所以查询时应该加上scott.emp就可以了
【2】显示当前用户
SQL> show user
【3】查看当前用户的所有表
SQL> SELECT * FROM tab;
【4】若想重复执行上一条SQL语句,则在sqlplus命令行下输入"/"即可
…… …… 余下全文
LIKE语句的语法格式是:select * from 表名 where 字段名 like 对应值(子串),它主要是针对字符型字段的,它的作用是在一个字符型字段列中检索包含对应子串的。
假设有一个数据库中有个表table1,在table1中有两个字段,分别是name和sex二者全是字符型数据。现在我们要在姓名字段中查询以“张”字开头的记录,语句如下:
select * from table1 where name like "张*"
如果要查询以“张”结尾的记录,则语句如下:
select * from table1 where name like "*张"
这里用到了通配符“*”,可以说,like语句是和通配符分不开的。下面我们就详细介绍一下通配符。
匹配类型
模式
举例 及 代表值
说明
多个字符
*
c*c代表cc,cBc,cbc,cabdfec等就是前文的代表
它同于DOS命令中的通配符,代表多个字符。
多个字符
%
%c%代表agdcagd等
这种方法在很多程序中要用到,主要是查询包含子串的。
特殊字符
a
…… …… 余下全文
plsql语句的编程手册 SQL PLUS
一、SQL PLUS
1 引言
SQL命令
以下17个是作为语句开头的关键字: alter drop revoke
audit grant rollback*
commit* insert select
comment lock update
create noaudit validate
delete rename
这些命令必须以“;”结尾
带*命令句尾不必加分号,并且不存入SQL缓存区。
SQL中没有的SQL*PLUS命令
这些命令不存入SQL缓存区
@ define pause
# del quit
$ describe remark
/ disconnect run
accept document save
append edit set
break exit show
btitle get spool
change help sqlplus
clear host start
column input timing
compute list ttitle
…… …… 余下全文