SQL Server2000
冯立彬
每天前进一步
展开
-
数据库开发规范
数据库开发规范一.数据表和字段的设计 表设计原则 1、标准化和规范化 数据的标准化有助于消除数据库中的数据冗余。标准化有好几种形式,我们在这里采用Third Normal Form(3NF),因为3NF在性能、扩展性和数据完整性方面达到了最好平衡。遵守3NF 标准的数据库某个表只包括其本身基本的属性,当不是它们本身所具有的属性时需进行分解。表之间的关系通过外键相连接。它具有以下特点:有一原创 2006-07-02 10:21:00 · 6339 阅读 · 0 评论 -
SQLServer中对所有的用户表生成触发器
测试的时候比较重要,我们可以知道当前交易影响了哪些表--用于记录用户在当前表上什么时候、做的什么操作:update、insert、deletecreate table TriggerRecord( operdt datetime, --触发时间 opertp varchar(10), --操作类型:update、insert、delete opertb varchar(50原创 2009-10-28 17:46:00 · 2068 阅读 · 1 评论 -
采用批处理命令对文件进行解压及采用SQLCMD进行数据库挂载
现在公司采用一个新的平台,其中自带有一部分数据,需要对其进行初使化,涉及到文件的拷贝及数据库的挂载,难得去搞多次,就搞了个批处理命令一次性搞定,其中特别需要注意两点:1、字符串的连接。一连都是采用 set cc=%aa%&%bb%的形式,但这里不能够这样操作,因为&符号在set中表示位与操作,如果这样做永远会报错。%aa%表示引用的aa这个变量,这里需要将由aa,bb代表的字符串连接成一个新的原创 2008-01-26 21:58:00 · 13113 阅读 · 0 评论 -
用触发器对sqlserver进行数据备份
今天公司的论坛被黑了,才感觉到原来的那些数据是多么的重要,于是乎在网上找各种各样的工具去恢复。。。不管怎么样,数据备份肯定是非常重要的,下面是一个采用触发器对数据进行插入、更新的时候冗余备份方法,就是采用一个多的数据表,可能这样要更占空间,不过为了数据的安全,没有办法,只有这样做了。适用于数据库:SQLServer1、建立测试数据表:一个用于插入数据,test3另一个作为备份,原创 2007-12-19 20:49:00 · 7387 阅读 · 0 评论 -
在SQL SERVER里显示到期的内容
问:目前需要开发一个简单系统里面有一个实现日期到期提示功能,采用的是sql server2005建表,设置一个到期时间,希望能在到期时间前1个星期内将这条记录单独列出作为重点提示的内容?答:我做了一下测试,你的问题可以这样解决,这个与你用什么样的语言去实现都一样的, create table t(id int,name varchar(50),inTime datetime);in原创 2007-11-01 17:23:00 · 6606 阅读 · 0 评论 -
在XP下,采用JDBC连接SQL SERVER 2005
现在没有办法,只有采用XP系统,不能够装2003,那就只有想方设法让自己的XP跑SQL SERVER 2005了,从两个地方找到了如下说明,试了,能够成功。先得保证XP打了SP2补丁:1、1433端口问题在sp2下,防火墙默认的是关闭这个端口的。需要自己去打开。控制面板-防火墙-例外,分别填加TCP 1433端口UDP 1433端口。2、 打开SQL SERVER CONFIGRATI原创 2008-01-21 17:28:00 · 6809 阅读 · 1 评论 -
在JAVA中调用存储过程、并将结果取出来一例
1)、编写在seq_block取应表的流水号、并将该流水号在取完之后加一、如果没有存在指定的表的时候加放与该表名对应的记录的存储过程:create procedure getIdxByTablename(@tablename varchar(50),@outIdx int output)as begin declare @idx int declare @currentTabl原创 2008-01-07 20:11:00 · 5952 阅读 · 0 评论 -
在SQLServer2005中,新建一个用户,并分配一个角色
--在数据库中增加一个用户,但没有明确分配到某个数据库中create login testuser with password='testuser'use mytest--选择一个数据库--将该用户加到该数据库,登陆名与创建名高为一样create user testuser for login testuser--把开mytest->安全性->用户--双击testuser,原创 2007-12-24 19:32:00 · 7087 阅读 · 0 评论 -
sqlserver简单示例
示例1、建立一个表,然后通过存储过程往该表中插入100条记录create table teachers(id int primary key not null identity(10000,100),tea_name varchar(50),tea_age int default 20)create procedure insert1000teachersas declare原创 2007-12-21 09:42:00 · 5600 阅读 · 0 评论 -
用SQL语句把物品按名字分组后,只显示价格最低的那一条记录
如在MySQL中操作:create table table1(id int auto_increment primary key,name varchar(50),price float default 0);insert into table1(name,price) values('玉米',10);insert into table1(name,price) values('大原创 2007-10-31 14:34:00 · 8179 阅读 · 0 评论 -
数据操作语言DML及数据定义语言DDL的区别
数据操作语言DML及数据定义语言DDL的区别 1、数据操作语言DML(Data Manipulation Language),用户通过它可以实现对数据库的基本操作。例如,对表中数据的查询、插入、删除和修改。 在DML中,应用程序可以对数据库作插,删,改,排,检等五种操作: (1)插操作:把数据插入到数据库中指定的位置上去,如Append 是在数据库文件的末尾添加记录,而I原创 2007-10-24 11:57:00 · 11453 阅读 · 0 评论 -
"服务器无法继续该事务 3400000006"错误原因--JAVA调用SQLSERVER存储过程时过程发生异常内部事务未提交
通过JAVA调用SQLSERVER存储过程时,存储过程内部发生了类型转换异常,在类型转换异常发生之前已经将事务打开了,并且在类型转换那一行没有采用像如下错误处理: if @@error goto err end 导致了过程在发生异常的时候直接中断返回JAVA,此时过程内部的事务并没有提交,根据MICROSOFT的文档如果存储过程内部有事务并且事务没有原创 2010-01-08 17:41:00 · 11809 阅读 · 0 评论 -
clustered和nonclustered索引的区别
最大区别在于clustered是物理上实现数据排序,并且同一个表里只能有一个clustered索引,而nonclustered是逻辑上的排序。There are clustered and nonclustered indexes. A clustered index is a special type of index that reorders the way records in the原创 2009-04-01 10:43:00 · 18369 阅读 · 4 评论 -
实用SQL語句
实用SQL語句1、将一个表中的内容拷贝到另外一个表中insert into testT1(a1,b1,c1)select a,b,cfrom test;insert into testTselect *from test; (前提是兩個表的結構完全相同) insert into notebook(id,title,content)select noteboo原创 2007-10-24 12:23:00 · 6752 阅读 · 0 评论 -
TRUNCATE和DELETE的几点区别
TRUNCATE和DELETE的几点区别 1、TRUNCATE在各种表上无论是大的还是小的都非常快。如果有ROLLBACK命令DELETE将被撤销,而TRUNCATE则不会被撤销。 2、TRUNCATE是一个DDL语言,向其他所有的DDL语言一样,他将被隐式提交,不能对TRUNCATE使用ROLLBACK命令。 3、TRUNCATE将重新设置高水平线和所有的索引。在对整个表和索引原创 2007-10-24 11:43:00 · 6645 阅读 · 0 评论 -
使用左、右、全、内连接及使用where条件语句的区别
使用左、右、全、内连接及使用where条件语句的区别从学SQL语句到现在,从来没有使用过左右连接,也许会有人感到惊讶,但是确实是没有,因为我一直是使用的WHERE条件语句。我也想试一下效果,今天做了一下测试,终于知道WHERE条件就只能够做到连接中的内连接功能,因为它不可能把不满足条件的语句显示出来,不过,在大多数的生活实例中肯定是存在的,就像一个人的编号还存在,但是这个人的信息已经被删除掉了原创 2007-10-23 16:48:00 · 10814 阅读 · 3 评论 -
百万数据查询优化技巧三十则
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: select转载 2011-11-15 11:28:42 · 2965 阅读 · 3 评论 -
SQL Server数据库备份与还原处理
转贴路径:http://blog.csdn.net/zjcxc/archive/2003/12/29/20074.aspx利用T-SQL语句,实现数据库的备份与还原的功能体现了SQL Server中的四个知识点: 1. 获取SQL Server服务器上的默认目录 2. 备份SQL语句的使用 3. 恢复SQL语句的使用,同时考虑了强制恢复时关闭其他用户进程的处理转载 2008-01-18 21:41:00 · 6284 阅读 · 0 评论 -
Microsoft SQL Server性能调校
原贴地址:http://blog.csdn.net/smartkernel/archive/2007/07/28/1713096.aspxwww.SmartKernel.com【书名 】:Microsoft SQL Server性能调校【出版社 】:电子工业出版社【作者 】:胡百敬【评价 】:★★★☆☆☆☆☆☆☆【正文 】:------------------转载 2008-02-23 10:24:00 · 6294 阅读 · 0 评论 -
再学SQL SERVER(1)
一直就喜欢SQL编程,我觉得用SQL进行编程是一种艺术、是一种享受。用的最熟的可能还是那个SELECT语句吧,因为我每次用它加上WHERE和ADN组成的条件语句都够从多个表中选出需要的数据,那种感觉真是爽。在毕业以前,其实的我都是很少用多表联查,可能当时没有这个项目需求,平时自己练的时候也就毕竟少,加上自己当时就一门心思的想多学几门语言,这方面的功能就花得相对少得多。就拿自己做得一个商业原创 2007-01-25 22:31:00 · 6815 阅读 · 0 评论 -
Oracle,sqlserver,mysql的自增变量设置
Oracle,sqlserver,mysql的自增变量设置不同的东家养不同的女儿,这三种数据库在设置自增变量方面都是不同的,下面我归类了一下:1、Mysql。它的自增变量个人有认为是最好记的,使用AUTO_INCREMENT关键字,知道英文的就更好记忆了,如下创建一个带有自增变理的表:create table test(id int AUTO_INCREMENT primary key not n原创 2007-07-12 15:29:00 · 7964 阅读 · 0 评论 -
数据库设计三大范式应用实例剖析(讲得比较清楚)
转贴地址:http://blog.csdn.net/songkexin/archive/2007/01/18/1486289.aspx先说几句: 首先作者的劳动果实,让我对这个比较模糊到现在对范式有了一个比较清晰的认识。不过,结合我自己的实际理解及经验,我会在里面加入一些我个人的注释,以便于更好的理解,我希望原作者能够同意。我所以的个人说明都会放在{}内,并且以绿色的字体呈现转载 2007-07-16 21:03:00 · 12249 阅读 · 0 评论 -
从JSP WEB页面往数据库写入出现乱码的一种解决方法
Java是个好东西,写JAVA的感觉就是爽,可是在用到JAVA与数据库的时候,多半都会出现乱码的问题,特别是中文字符总是被强奸成为“?”,看到心理面多多少少有点难受。这也是我们被老外欺负,就因为这个软件是他们写的,对英语支持那里都是100%,可是我们的字符总是被他们耍皮球一样的扔过去扔过来。前面听说微软件出了个叫oneCare的杀毒,想拿来用用,居然提示说语言不支持,一个字“气”。原创 2007-07-18 10:35:00 · 9931 阅读 · 0 评论 -
Oracle、SQL Server、Access利用SQL语句进行高效果分页
在程序开发中,处理分页往往是比较频繁的事件,因为现在软件基本上都是与数据库进行挂钓的。但效率又是我们所追求的,如果是像原来那样把所有满足条件的记录全部都选择出来,再去进行分页处理,那么就会多多的浪费掉许多的系统处理时间。为了能够把效率提高,所以现在我们就只选择我们需要的数据,减少数据库的处理时间,以下就是常用SQL分页处理: 1、SQL Server、Access数据库 这都微原创 2007-07-20 21:43:00 · 7251 阅读 · 6 评论 -
利用JTDS连接数据库并操作示例
/** * 利用JTDS连接数据库并操作,来源www.sourceforge.net */import java.sql.*;import net.sourceforge.*;import net.sourceforge.jtds.jdbc.Driver;/** * 利用JTDS连接数据库并操作 */public classtest{ public test() { } p原创 2007-05-26 21:28:00 · 9121 阅读 · 2 评论 -
Sql为什么连接不上服务器上的数据库
如何来解决三个最常见的连接错误。 cmd.Netstat -at 第一个错误"SQL Server 不存在或访问被拒绝"通常是最复杂的,错误发生的原因比较多,需要检查的方面也比较多。一般说来,有以下几种可能性: 1、SQL Server名称或IP地址拼写有误; 2、服务器端网络配置有误; 3、客户端网络配置有误。 要转载 2007-05-28 14:56:00 · 24641 阅读 · 3 评论 -
SQL: "IN" Function
SQL: "IN" FunctionThe IN function helps reduce the need to use multiple OR conditions.译:IN函数有助于减少OR条件的复合使用。The syntax for the IN function is:译:IN函数的语法:SELECT columnsFROM tablesWHERE col翻译 2007-10-25 09:37:00 · 7948 阅读 · 0 评论 -
SQL: ORDER BY Clause
SQL: ORDER BY ClauseThe ORDER BY clause allows you to sort the records in your result set. The ORDER BY clause can only be used in SELECT statements.译:ORDER BY允许你在结果集中对记录进行排序。ORDER BY只能够用于SEL翻译 2007-10-25 09:42:00 · 10916 阅读 · 0 评论 -
SQL: HAVING Clause
SQL: HAVING ClauseThe HAVING clause is used in combination with the GROUP BY clause. It can be used in a SELECT statement to filter the records that a GROUP BY returns.译:HAVING子句是与GROUP BY子句联翻译 2007-10-25 10:14:00 · 11000 阅读 · 0 评论 -
SQL: GROUP BY Clause
SQL: GROUP BY ClauseThe GROUP BY clause can be used in a SELECT statement to collect data across multiple records and group the results by one or more columns.GROUP BY子句可用在SELECT的多条结果中选择数据并且将转载 2007-10-25 10:24:00 · 6698 阅读 · 0 评论 -
SQL中通配符、转义符与"["号的使用
一、搜索通配符字符的说明可以搜索通配符字符。有两种方法可指定平常用作通配符的字符: 使用 ESCAPE 关键字定义转义符。在模式中,当转义符置于通配符之前时,该通配符就解释为普通字符。例如,要搜索在任意位置包含字符串 5% 的字符串,请使用: WHERE ColumnA LIKE %5/%% ESCAPE / 在上述 LIKE 子句中,前导和结尾转载 2007-11-01 22:39:00 · 7554 阅读 · 0 评论 -
数据挖掘
数据挖掘 什么是数据挖掘 数据挖掘(Data Mining),又称为数据库中的知识发现(Knowledge Discovery in Database, KDD),就是从大量数据中获取有效的、新颖的、潜在有用的、最终可理解的模式的非平凡过程,简单的说,数据挖掘就是从大量数据中提取或“挖掘”知识。转载 2007-11-12 13:47:00 · 7298 阅读 · 0 评论 -
bcp命令详解
bcp命令详解bcp 实用工具在 Microsoft SQL Server 2000 及Sybase 实例和数据文件之间以用户指定的格式复制数据。语法bcp {[[database_name.][owner].]{table_name | view_name} | "query"} {in | out | queryout | format} data_file转载 2008-02-15 14:27:00 · 13280 阅读 · 1 评论 -
几种分页查询的实现与比较
原贴地址:http://blog.csdn.net/smartkernel/archive/2008/02/22/2112917.aspxwww.SmartKernel.com几种分页查询的实现与比较:个人比较推荐第5种方式,性能比较稳定,语法结构简单 --【00】初始化数据(执行几分钟就可以产生几百万数据)Person表结构:ID(int 自增列),Name(nvarchar(转载 2008-02-23 10:49:00 · 6465 阅读 · 0 评论 -
SQL SERVER存储过程批量插入数据库表数据
在做数据库系统开发时,特别是需要对数据库操作进行性能测试及优化时,我们就需要在数据库测试表中插入大量数据以便测试。对于这些数据的插入,这里通过实例展示如何通过存储过程进行实现。 数据库表(userInfo)结构如下: CREATE TABLE [dbo].[userInfo] ( [userID] [int] IDENTITY (1, 1) NOT NULL原创 2007-10-11 12:04:00 · 6511 阅读 · 0 评论