??xml version="1.0" encoding="utf-8" standalone="yes"?>中文字幕在线三区,精品国产乱码久久久久久1区2匹 ,一区二区三区视频播放http://www.aygfsteel.com/hefang/category/45425.htmlzh-cnFri, 25 Jun 2010 09:57:40 GMTFri, 25 Jun 2010 09:57:40 GMT60SQL语句字符串处理大??http://www.aygfsteel.com/hefang/articles/324478.html何方何方Fri, 25 Jun 2010 09:46:00 GMThttp://www.aygfsteel.com/hefang/articles/324478.htmlhttp://www.aygfsteel.com/hefang/comments/324478.htmlhttp://www.aygfsteel.com/hefang/articles/324478.html#Feedback0http://www.aygfsteel.com/hefang/comments/commentRss/324478.htmlhttp://www.aygfsteel.com/hefang/services/trackbacks/324478.html常用的字W串函数有:

  一、字W{换函?/p>

  1、ASCII()

  q回字符表达式最左端字符的ASCII 码倹{在ASCII()函数中,U数字的字符串可不用‘’括v来,但含其它字符的字W串必须?#8216;’括v来用,否则会出错?/p>

  2、CHAR()

  ASCII 码{换ؓ字符。如果没有输? ~ 255 之间的ASCII 码|CHAR() q回NULL ?/p>

  3、LOWER()和UPPER()

  LOWER()字W串全部转ؓ写;UPPER()字W串全部转ؓ大写?/p>

  4、STR()

  把数值型数据转换为字W型数据?/p>

  STR ([Qlength[Q?]])

  length 指定q回的字W串的长度,decimal 指定q回的小C数。如果没有指定长度,~省的length gؓ10Q?decimal ~省gؓ0?/p>

  当length 或者decimal 值时Q返回NULL;

  当length 于数点左?包括W号?的位数时Q返回length ?;

  先服从length Q再取decimal ;

  当返回的字符串位数小于length Q左边补空根{?/p>

  二、去I格函数

  1、LTRIM() 把字W串头部的空格去掉?/p>

  2、RTRIM() 把字W串N的空格去掉?/p>

  三、取子串函数

  1、left()

  LEFT (Q?)

  q回character_expression 左v integer_expression 个字W?/p>

  2、RIGHT()

  RIGHT (Q?)

  q回character_expression 双v integer_expression 个字W?/p>

  3、SUBSTRING()

  SUBSTRING (Q?Q?length)

  q回从字W串左边Wstarting_ position 个字Wvlength个字W的部分?/p>

  四、字W串比较函数

  1、CHARINDEX()

  q回字符串中某个指定的子串出现的开始位|?/p>

  CHARINDEX (<’substring_expression’>Q?)

  其中substring _expression 是所要查扄字符表达式,expression 可ؓ字符串也可ؓ列名表达式。如果没有发现子Ԍ则返? 倹{?/p>

  此函C能用于TEXT 和IMAGE 数据cd?/p>

  2、PATINDEX()

  q回字符串中某个指定的子串出现的开始位|?/p>

  PATINDEX (<’%substring _expression%’>Q?)其中子串表达式前后必L癑ֈ?#8220;%”否则q回gؓ0?/p>

  与CHARINDEX 函数不同的是QPATINDEX函数的子串中可以使用通配W,且此函数可用于CHAR?VARCHAR 和TEXT 数据cd?/p>

  五、字W串操作函数

  1、QUOTENAME()

  q回被特定字W括h的字W串?/p>

  QUOTENAME (<’character_expression’>[Q?quote_ character]) 其中quote_ character 标明括字W串所用的字符Q缺省gؓ“[]”?/p>

  2、REPLICATE()

  q回一个重复character_expression 指定ơ数的字W串?/p>

  REPLICATE (character_expression integer_expression) 如果integer_expression gؓ负|则返回NULL ?/p>

  3、REVERSE()

  指定的字符串的字符排列序颠倒?/p>

  REVERSE () 其中character_expression 可以是字W串、常数或一个列的倹{?/p>

  4、REPLACE()

  q回被替换了指定子串的字W串?/p>

  REPLACE (Q?Q?) 用string_expression3 替换在string_expression1 中的子串string_expression2?/p>

  4、SPACE()

  q回一个有指定长度的空白字W串?/p>

  SPACE () 如果integer_expression gؓ负|则返回NULL ?/p>

  5、STUFF()

  用另一子串替换字符串指定位|、长度的子串?/p>

  STUFF (Q?Q?Q?

  如果起始位置或长度gؓ负,或者v始位|大于character_expression1 的长度,则返回NULL 倹{?/p>

  如果length 长度大于character_expression1 ?start_ position 以右的长度,则character_expression1 只保留首字符?/p>

  六、数据类型{换函?/p>

  1、CAST()

  CAST ( AS [ length ])

  2、CONVERT()

  CONVERT ([ length ]Q?[Q?style])

  1)data_type为SQL Serverpȝ定义的数据类型,用户自定义的数据cd不能在此使用?/p>

  2)length用于指定数据的长度,~省gؓ30?/p>

  3)把CHAR或VARCHARcd转换如INT或SAMLLINTq样的INTEGERcd、结果必L带正h负号的数倹{?/p>

  4)TEXTcd到CHAR或VARCHARcd转换最多ؓ8000个字W,即CHAR或VARCHAR数据cd是最大长度?/p>

  5)IMAGEcd存储的数据{换到BINARY或VARBINARYcdQ最多ؓ8000个字W?/p>

  6)把整数D{换ؓMONEY或SMALLMONEYcdQ按定义的国家的货币单位来处理,如h民币、美元、英镑等?/p>

  7)BITcd的{换把非零D{换ؓ1Qƈ仍以BITcd存储?/p>

  8)试图转换C同长度的数据cdQ会截短转换值ƈ在{换值后昄“ ”Q以标识发生了这U截断?/p>

  9)用CONVERT()函数的style 选项能以不同的格式显C日期和旉。style 是将DATATIME 和SMALLDATETIME 数据转换为字W串时所选用的由SQL Server pȝ提供的{换样式编P不同的样式编h不同的输出格式?/p>

  七、日期函?/p>

  1、day(date_expression)

  q回date_expression中的日期?/p>

  2、month(date_expression)

  q回date_expression中的月䆾?/p>

  3、year(date_expression)

  q回date_expression中的q䆾?/p>

  4、DATEADD()

  DATEADD (Q?Q?)

  q回指定日期date 加上指定的额外日期间隔number 产生的新日期?/p>

 

  5、DATEDIFF()

  DATEDIFF (Q?Q?)

  q回两个指定日期在datepart 斚w的不同之处,即date2 过date1的差距|其结果值是一个带有正负号的整数倹{?/p>

  6、DATENAME()

  DATENAME (Q?)

  以字W串的Ş式返回日期的指定部分此部分。由datepart 来指定?/p>

  7、DATEPART()

  DATEPART (Q?)

  以整数值的形式q回日期的指定部分。此部分由datepart 来指定?/p>

何方 2010-06-25 17:46 发表评论
]]>
Sql语法明一览(转)http://www.aygfsteel.com/hefang/articles/324466.html何方何方Fri, 25 Jun 2010 09:15:00 GMThttp://www.aygfsteel.com/hefang/articles/324466.htmlhttp://www.aygfsteel.com/hefang/comments/324466.htmlhttp://www.aygfsteel.com/hefang/articles/324466.html#Feedback0http://www.aygfsteel.com/hefang/comments/commentRss/324466.htmlhttp://www.aygfsteel.com/hefang/services/trackbacks/324466.html--数据操作
SELECT --从数据库表中索数据行和列
INSERT --向数据库表添加新数据?br /> DELETE --从数据库表中删除数据?br /> UPDATE --更新数据库表中的数据
--数据定义
CREATE TABLE --创徏一个数据库?br /> DROP TABLE --从数据库中删除表
ALTER TABLE --修改数据库表l构
CREATE VIEW --创徏一个视?br /> DROP VIEW --从数据库中删除视?br /> CREATE INDEX --为数据库表创Z个烦?br /> DROP INDEX --从数据库中删除烦?br /> CREATE PROCEDURE --创徏一个存储过E?br /> DROP PROCEDURE --从数据库中删除存储过E?br /> CREATE TRIGGER --创徏一个触发器
DROP TRIGGER --从数据库中删除触发器
CREATE SCHEMA --向数据库d一个新模式
DROP SCHEMA --从数据库中删除一个模?br /> CREATE DOMAIN --创徏一个数据值域
ALTER DOMAIN --改变域定?br /> DROP DOMAIN --从数据库中删除一个域
--数据控制
GRANT --授予用户讉K权限
DENY --拒绝用户讉K
REVOKE --解除用户讉K权限
--事务控制
COMMIT --l束当前事务
ROLLBACK --中止当前事务
SET TRANSACTION --定义当前事务数据讉K特征
--E序化SQL
DECLARE --为查询设定游?br /> EXPLAN --为查询描q数据访问计?br /> OPEN --索查询结果打开一个游?br /> FETCH --索一行查询结?br /> CLOSE --关闭游标
PREPARE --为动态执行准备SQL 语句
EXECUTE --动态地执行SQL 语句
DESCRIBE --描述准备好的查询
---局部变?br /> declare @id char(10)
--set @id = '10010001'
select @id = '10010001'

---全局变量
---必须以@@开?br />


--IF ELSE
declare @x int @y int @z int
select @x = 1 @y = 2 @z=3
if @x > @y
print 'x > y' --打印字符?x > y'
else if @y > @z
print 'y > z'
else print 'z > y'



--CASE
use pangu
update employee
set e_wage =
case
when 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.05
end



--WHILE CONTINUE BREAK
declare @x int @y int @c int
select @x = 1 @y=1
while @x < 3
begin
print @x --打印变量x 的?br /> while @y < 3
begin
select @c = 100*@x + @y
print @c --打印变量c 的?br /> select @y = @y + 1
end
select @x = @x + 1
select @y = 1
end



--WAITFOR
--?{待1 时2 分零3 U后才执行SELECT 语句
waitfor delay ’01:02:03’
select * from employee
--?{到晚上11 炚w8 分后才执行SELECT 语句
waitfor 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子句中用通配W?
or stockpath = 'stock_path'
or stocknumber < 1000
and stockindex = 24
not stock*** = 'man'
stocknumber between 20 and 100
stocknumber in(10,20,30)
order by stockid desc(asc) --------- 排序Qdesc-降序Qasc-升序
order by 1,2 --------- by列号
stockname = (select stockname from stock_information where stockid = 4)
--------- 子查?br /> --------- 除非能确保内层select只返回一个行的|
--------- 否则应在外层where子句中用一个in限定W?br /> select distinct column_name form table_name --------- distinct指定索独有的列|不重?br /> select stocknumber ,"stocknumber + 10" = stocknumber + 10 from table_name
select stockname , "stocknumber" = count(*) from table_name group by stockname
--------- group by 表按行分组,指定列中有相同的?br /> having count(*) = 2 --------- having选定指定的组



select *
from table1, table2
where table1.id *= table2.id -------- 左外部连接,table1中有的而table2中没有得以null表示
table1.id =* table2.id -------- 叛_部连?



select stockname from table1
union [all] ----- union合ƈ查询l果集,all-保留重复?br /> 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 = default
Stockname = null
Stocknumber = Stockname + 4



***delete***



delete from table_name where Stockid = 3
truncate table_name ----------- 删除表中所有行Q仍保持表的完整?br /> drop table table_name --------------- 完全删除?br />


***alter table*** --- 修改数据库表l构



alter table database.owner.table_name add column_name char(2) null .....
sp_help table_name ---- 昄表已有特?br /> create table table_name (name char(20), age smallint, lname varchar(30))
insert into table_name select ......... ----- 实现删除列的ҎQ创建新表)
alter table table_name drop constraint Stockname_default ---- 删除Stockname的defaultU束



***function(/*常用函数*/)***



----l计函数----
AVG --求^均?br /> COUNT --l计数目
MAX --求最大?br /> MIN --求最?br /> SUM --求和



--AVG
use pangu
select avg(e_wage) as dept_avgWage
from employee
group by dept_id



--MAX
--求工资最高的员工姓名
use pangu
select e_name
from employee
where e_wage =
(select max(e_wage)
from employee)



--STDEV()
--STDEV()函数q回表达式中所有数据的标准?br />


--STDEVP()
--STDEVP()函数q回M标准?br />


--VAR()
--VAR()函数q回表达式中所有值的l计变异?br />


--VARP()
--VARP()函数q回M变异?br />


----术函数----



/***三角函数***/
SIN(float_expression) --q回以弧度表C的角的正u
COS(float_expression) --q回以弧度表C的角的余u
TAN(float_expression) --q回以弧度表C的角的正切
COT(float_expression) --q回以弧度表C的角的余切
/***反三角函?**/
ASIN(float_expression) --q回正u是FLOAT 值的以弧度表C的?br /> ACOS(float_expression) --q回余u是FLOAT 值的以弧度表C的?br /> ATAN(float_expression) --q回正切是FLOAT 值的以弧度表C的?br /> ATAN2(float_expression1,float_expression2)
--q回正切是float_expression1 /float_expres-sion2的以弧度表示的角
DEGREES(numeric_expression)
--把弧度{换ؓ角度q回与表辑ּ相同的数据类型可?br /> --INTEGER/MONEY/REAL/FLOAT cd
RADIANS(numeric_expression) --把角度{换ؓ弧度q回与表辑ּ相同的数据类型可?br /> --INTEGER/MONEY/REAL/FLOAT cd
EXP(float_expression) --q回表达式的指数?br /> LOG(float_expression) --q回表达式的自然Ҏ?br /> LOG10(float_expression)--q回表达式的?0 为底的对数?br /> SQRT(float_expression) --q回表达式的qx?br /> /***取近似值函?**/
CEILING(numeric_expression) --q回>=表达式的最整数返回的数据cd与表辑ּ相同可ؓ
--INTEGER/MONEY/REAL/FLOAT cd
FLOOR(numeric_expression) --q回<=表达式的最整数返回的数据cd与表辑ּ相同可ؓ
--INTEGER/MONEY/REAL/FLOAT cd
ROUND(numeric_expression) --q回以integer_expression 为精度的四舍五入D回的数据
--cd与表辑ּ相同可ؓINTEGER/MONEY/REAL/FLOAT cd
ABS(numeric_expression) --q回表达式的l对D回的数据cd与表辑ּ相同可ؓ
--INTEGER/MONEY/REAL/FLOAT cd
SIGN(numeric_expression) --试参数的正负号q回0 零? 正数?1 负数q回的数据类?br /> --与表辑ּ相同可ؓINTEGER/MONEY/REAL/FLOAT cd
PI() --q回gؓπ ?.1415926535897936
RAND([integer_expression]) --用Q选的[integer_expression]做种子值得?-1 间的随机点?br />



----字符串函?---
ASCII() --函数q回字符表达式最左端字符的ASCII 码?br /> CHAR() --函数用于ASCII 码{换ؓ字符
--如果没有输入0 ~ 255 之间的ASCII 码值CHAR 函数会返回一个NULL ?br /> LOWER() --函数把字W串全部转换为小?br /> UPPER() --函数把字W串全部转换为大?br /> STR() --函数把数值型数据转换为字W型数据
LTRIM() --函数把字W串头部的空格去?br /> RTRIM() --函数把字W串N的空格去?br /> LEFT(),RIGHT(),SUBSTRING() --函数q回部分字符?br /> CHARINDEX(),PATINDEX() --函数q回字符串中某个指定的子串出现的开始位|?br /> SOUNDEX() --函数q回一个四位字W码
--SOUNDEX函数可用来查扑֣音相似的字符串但SOUNDEX函数Ҏ字和汉字均只q回0 ?
DIFFERENCE() --函数q回由SOUNDEX 函数q回的两个字W表辑ּ的值的差异
--0 两个SOUNDEX 函数q回值的W一个字W不?br /> --1 两个SOUNDEX 函数q回值的W一个字W相?br /> --2 两个SOUNDEX 函数q回值的W一二个字符相同
--3 两个SOUNDEX 函数q回值的W一二三个字W相?br /> --4 两个SOUNDEX 函数q回值完全相?br />



QUOTENAME() --函数q回被特定字W括h的字W串
/*select quotename('abc', '{') quotename('abc')
q行l果如下
----------------------------------{
{abc} [abc]*/



REPLICATE() --函数q回一个重复character_expression 指定ơ数的字W串
/*select replicate('abc', 3) replicate( 'abc', -2)
q行l果如下
----------- -----------
abcabcabc NULL*/



REVERSE() --函数指定的字符串的字符排列序颠?br /> REPLACE() --函数q回被替换了指定子串的字W串
/*select replace('abc123g', '123', 'def')
q行l果如下
----------- -----------
abcdefg*/



SPACE() --函数q回一个有指定长度的空白字W串
STUFF() --函数用另一子串替换字符串指定位|长度的子串




----数据cd转换函数----
CAST() 函数语法如下
CAST() (<expression> AS <data_ type>[ length ])
CONVERT() 函数语法如下
CONVERT() (<data_ type>[ length ], <expression> [, style])



select cast(100+99 as char) convert(varchar(12), getdate())
q行l果如下
------------------------------ ------------
199 Jan 15 2000



----日期函数----
DAY() --函数q回date_expression 中的日期?br /> MONTH() --函数q回date_expression 中的月䆾?br /> YEAR() --函数q回date_expression 中的q䆾?br /> DATEADD(<datepart> ,<number> ,<date>)
--函数q回指定日期date 加上指定的额外日期间隔number 产生的新日期
DATEDIFF(<datepart> ,<number> ,<date>)
--函数q回两个指定日期在datepart 斚w的不同之?br /> DATENAME(<datepart> , <date>) --函数以字W串的Ş式返回日期的指定部分
DATEPART(<datepart> , <date>) --函数以整数值的形式q回日期的指定部?br /> GETDATE() --函数以DATETIME 的缺省格式返回系l当前的日期和时?br />


----pȝ函数----
APP_NAME() --函数q回当前执行的应用程序的名称
COALESCE() --函数q回众多表达式中W一个非NULL 表达式的?br /> COL_LENGTH(<'table_name'>, <'column_name'>) --函数q回表中指定字段的长度?br /> COL_NAME(<table_id>, <column_id>) --函数q回表中指定字段的名U即列名
DATALENGTH() --函数q回数据表达式的数据的实际长?br /> DB_ID(['database_name']) --函数q回数据库的~号
DB_NAME(database_id) --函数q回数据库的名称
HOST_ID() --函数q回服务器端计算机的名称
HOST_NAME() --函数q回服务器端计算机的名称
IDENTITY(<data_type>[, seed increment]) [AS column_name])
--IDENTITY() 函数只在SELECT INTO 语句中用用于插入一个identity column列到新表?br /> /*select identity(int, 1, 1) as column_name
into newtable
from oldtable*/
ISDATE() --函数判断所l定的表辑ּ是否为合理日?br /> ISNULL(<check_expression>, <replacement_value>) --函数表辑ּ中的NULL 值用指定值替?br /> ISNUMERIC() --函数判断所l定的表辑ּ是否为合理的数?br /> NEWID() --函数q回一个UNIQUEIDENTIFIER cd的数?br /> NULLIF(<expression1>, <expression2>)
--NULLIF 函数在expression1 与expression2 相等时返回NULL D不相{时则返回expression1 的?br />






sql中的保留?br />


action add aggregate all
alter after and as
asc avg avg_row_length auto_increment
between bigint bit binary
blob bool both by
cascade case char character
change check checksum column
columns comment constraint create
cross current_date current_time current_timestamp
data database databases date
datetime day day_hour day_minute
day_second dayofmonth dayofweek dayofyear
dec decimal default delayed
delay_key_write delete desc describe
distinct distinctrow double drop
end else escape escaped
enclosed enum explain exists
fields file first float
float4 float8 flush foreign
from for full function
global grant grants group
having heap high_priority hour
hour_minute hour_second hosts identified
ignore in index infile
inner insert insert_id int
integer interval int1 int2
int3 int4 int8 into
if is isam join
key keys kill last_insert_id
leading left length like
lines limit load local
lock logs long longblob
longtext low_priority max max_rows
match mediumblob mediumtext mediumint
middleint min_rows minute minute_second
modify month monthname myisam
natural numeric no not
null on optimize option
optionally or order outer
outfile pack_keys partial password
precision primary procedure process
processlist privileges read real
references reload regexp rename
replace restrict returns revoke
rlike row rows second
select set show shutdown
smallint soname sql_big_tables sql_big_selects
sql_low_priority_updates sql_log_off sql_log_update sql_select_limit
sql_small_result sql_big_result sql_warnings straight_join
starting status string table
tables temporary terminated text
then time timestamp tinyblob
tinytext tinyint trailing to
type use using unique
unlock unsigned update usage
values varchar variables varying
varbinary with write when
where year year_month zerofill



何方 2010-06-25 17:15 发表评论
]]>
初学MySql 记录1http://www.aygfsteel.com/hefang/articles/324458.html何方何方Fri, 25 Jun 2010 09:08:00 GMThttp://www.aygfsteel.com/hefang/articles/324458.htmlhttp://www.aygfsteel.com/hefang/comments/324458.htmlhttp://www.aygfsteel.com/hefang/articles/324458.html#Feedback0http://www.aygfsteel.com/hefang/comments/commentRss/324458.htmlhttp://www.aygfsteel.com/hefang/services/trackbacks/324458.htmlint 4  可定?最长可以是11
double
char  定长字符?br /> varchar(255)
datatime
 

---创徏数据?br /> create database mydata;

--创表
use mydata;
create table dept
(
deptno int primary key,  --主键
dname varchar(14),
loc varchar(13)
);

---创徏另一张表
create table emp
(
empno int primary key,
name varchar(10),
job varchar(10),
mgr int,
hiredate datetime,
sal double,
comm double,
deptno int,
foreign key (deptno) references dept(deptno)
); 

---查询有多数据库
show databases;
---查询数据库下有多张?br /> show tables;
---查询表结?br /> desc emp;

----表里有多数?br /> select * from emp;
---插入数据
insert into dept values(1,'a','a');
---删除数据
delete form dept where dept.deptno =1;
---更新数据
delete dept set dname ='d' where deptno =5;
---提交
commit

---MySql单的排序   从第五个开始取Q取2条数?br /> select * from dept order by deptno limit 5,2;


Q数据库中的自动递增会媄响我们写E序Q?br /> ---自动递增
create table test1
(
id int primary key auto_increment,
title varchar(255)
);


----转换旉cd
select now();---当前旉
---转换日期格式
select date_format(now(),'%Y-%m-%d %H:%i:%s');
---插入日期数据
insert into emp values(32,'test','test',32,'1989-10-10 12:12:12',8080,8080,2);



何方 2010-06-25 17:08 发表评论
]]>
Sql Server语法http://www.aygfsteel.com/hefang/articles/324457.html何方何方Fri, 25 Jun 2010 09:06:00 GMThttp://www.aygfsteel.com/hefang/articles/324457.htmlhttp://www.aygfsteel.com/hefang/comments/324457.htmlhttp://www.aygfsteel.com/hefang/articles/324457.html#Feedback0http://www.aygfsteel.com/hefang/comments/commentRss/324457.htmlhttp://www.aygfsteel.com/hefang/services/trackbacks/324457.html----创徏数据?br /> Create DATABASE database-name

----删除数据?br /> drop database dbname

----备䆾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],col2 type2

[not null],..)
---Ҏ已有的表创徏新表Q?
create table tab_new like tab_old ---(使用旧表创徏新表)
create table tab_new as select col1,col2… from tab_old definition

---删除新表
drop table tabname
---增加一个列
Alter table tabname add column col type
---------列增加后不能删除。DB2中列加上后数据类型也不能改变Q唯一能改变是增加varcharcd的长度?/p>

---d主键Q?Alter table tabname add primary key(col)
---删除主键Q?Alter table tabname drop primary key(col)

---创徏索引Qcreate [unique] index idxname on tabname(col….)
---删除索引Qdrop index idxname
---索引是不可更改的Q想更改必须删除重新建?/p>

---创徏视图Qcreate view viewname as select statement
---删除视图Qdrop view viewname

---几个单的基本的sql语句
--选择Q?br /> select * from table1 where 范围
--插入Q?br /> insert into table1(field1,field2) values(value1,value2)
--删除Q?br /> delete from table1 where 范围
--更新Q?br /> update table1 set field1=value1 where 范围
--查找Q?br /> select * from table1 where field1 like ’%value1%’ ---like的语

--排序Q?br /> select * from table1 order by field1,field2 [desc]
--LQ?br /> select count as totalcount from table1
--求和Q?br /> select sum(field1) as sumvalue from table1
--q_Q?br /> select avg(field1) as avgvalue from table1
--最大:
select max(field1) as maxvalue from table1
--最:
select min(field1) as minvalue from table1

--随机查询数据
select newid()
---查询所有表
select name from sysobjects where type='u'
--查询表中有几个列
select name from syscolumns where id=object_id('transinfo')
--初始化表
truncate table test
---压羃数据?br /> dbcc shrinkdatabase('testssh')
--转移数据库给新用户以已存在用h?br /> exec sp_change_users_login 'update_one','whb','sa'
go
--查备份集
RESTORE VERIFYONLY from disk='E:\dvbbs.bak'
---日志清除
SET NOCOUNT ON
DECLARE @LogicalFileName sysname,
@MaxMinutes INT,
@NewSize INT

----SQL SERVER中直接@环写入数?br /> declare @i int
set @i=1
while @i<30
begin
insert into test (userid) values(@i)
set @i=@i+1
end
---存储更改全部?br /> Create PROCEDURE dbo.User_ChangeObjectOwnerBatch
@OldOwner as NVARCHAR(128),
@NewOwner as NVARCHAR(128)
AS

DECLARE @Name as NVARCHAR(128)
DECLARE @Owner as NVARCHAR(128)
DECLARE @OwnerName as NVARCHAR(128)

DECLARE curObject CURSOR FOR
select 'Name' = name,
'Owner' = user_name(uid)
from sysobjects
where user_name(uid)=@OldOwner
order by name

OPEN curObject
FETCH NEXT FROM curObject INTO @Name, @Owner
WHILE(@@FETCH_STATUS=0)
BEGIN
if @Owner=@OldOwner
begin
set @OwnerName = @OldOwner + '.' + rtrim(@Name)
exec sp_changeobjectowner @OwnerName, @NewOwner
end
-- select @name,@NewOwner,@OldOwner

FETCH NEXT FROM curObject INTO @Name, @Owner
END

close curObject
deallocate curObject
GO



何方 2010-06-25 17:06 发表评论
]]>
վ֩ģ壺 | ˳| ˮ| | ˮ| | | ̫| | | ½| տ| ˿| | ɿ| | Ϫ| | | | ʲ| ¡| | | ݳ| | | | ³ƶ| ʳ| | ƽ| | Ϫ| | | | | ̨| | |