![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
sql
simonhehe
这个作者很懒,什么都没留下…
展开
-
sql数据库质疑恢复办法
A.我们使用默认方式建立一个供恢复使用的数据库(如test)。可以在SQL Server Enterprise Manager 里面建立。B.停掉数据库服务器。C.将刚才生成的数据库的日志文件test_log.ldf删除,用要恢复的数据库mdf文件覆盖刚才生成的数据 库数据文件test_data.mdf。D.启动数据库服务器。此时会看到数据库test的状态为"置疑"。这时候不能对此数据库原创 2007-07-23 18:08:00 · 2559 阅读 · 0 评论 -
access和sql区别
Access是一种桌面数据库,只适合数据量少的应用,在处理少量数据和单机访问的数据库时是很好的,效率也很高。但是它的同时访问客户端不能多于4个。access数据库有一定的极限,如果数据达到100M左右,很容易造成服务器iis假死,或者消耗掉服务器的内存导致服务器崩溃。 SQL Server是基于服务器端的中型的数据库,可以适合大容量数据的应用,在功能上管理上也要比Access要强得多。在处理海量数原创 2007-05-14 20:53:00 · 1708 阅读 · 0 评论 -
跨服务器写触发器
create trigger t_test on test for insert,update,delete as set? XACT_ABORT on --启动远程服务器的MSDTC服务 exec master..xp_cmdshell isql /S"xz" /U"sa" /P"" /q"exec转载 2007-08-15 20:56:00 · 1974 阅读 · 0 评论 -
sql 死锁
在联机事务处理(OLTP)的数据库应用系统中,多用户、多任务的并发性是系统最重要的技术指标之一。为了提高并发性,目前大部分RDBMS都采用加锁技术。然而由于现实环境的复杂性,使用加锁技术又不可避免地产生了死锁问题。因此如何合理有效地使用加锁技术,最小化死锁是开发联机事务处理系统的关键。 死锁产生的原因 在联机事务处理系统中,造成死机主要有两方面原因。一方面,由于多用户、多任转载 2007-05-19 14:24:00 · 908 阅读 · 0 评论 -
日期+流水=编号 的实现方法
create table tb(ID nvarchar(20),col nvarchar(10))goset ANSI_NULLS ONset QUOTED_IDENTIFIER ONgoCreate function f_getID()returns nchar(11)asbegin declare @ID int declare @Nowdate nvarchar(8),@Othe原创 2007-08-20 21:14:00 · 2079 阅读 · 0 评论 -
处理死锁
use master --必须在master数据库中创建goif exists (select * from dbo.sysobjects where id = object_id(N[dbo].[p_lockinfo]) and OBJECTPROPERTY(id, NIsProcedure) = 1)drop procedure [dbo].[p_lockinfo]GO/*--处理死锁转载 2007-05-19 14:24:00 · 582 阅读 · 0 评论 -
DBA的一些职责
1.DBA的一些职责: 安装和升级数据库服务器(如Oracle、Microsoft SQL server),以及应用程序工具。 数据库设计系统存储方案,并制定未来的存储需求计划。 一旦开发人员设计了一个应用,就需要DBA来创建数据库存储结构(tablespaces)。 一旦开发人员设计了一个应用,就需要DBA来创建数据库对象(tables,views,indexes)。 根据开发人员的反馈信息,必转载 2007-05-26 21:44:00 · 957 阅读 · 0 评论 -
分页存储过程
--建立测试环境create table tb(id int,list varchar(10))insert tb(id,list)select 1,国内 union allselect 2,国外 union allselect 3,国内 union allselect 4,国外 union allselect 5,国外 union allselect 6转载 2007-08-21 23:11:00 · 659 阅读 · 0 评论 -
字段最高位加减的简单例子
create table #(AAA int)insert into # select 12100insert into # select 12101insert into # select 32101insert into # select 32109select reverse(reverse(rtrim(AAA) + 1) + 1)/10 from #/*结果221002210原创 2007-08-22 10:11:00 · 844 阅读 · 0 评论 -
触发器(trigger) 日期+流水=编号
create table tb(colID int identity,status int,ID nvarchar(14))gocreate trigger test on tbfor insert,updateasbegin if update(status) begin declare @status int,@colID int select @status = stat原创 2007-08-23 17:17:00 · 1468 阅读 · 0 评论 -
sql数据库系统表
sysaltfiles 主数据库 保存数据库的文件 syscharsets 主数据库 字符集与排序顺序 sysconfigures 主数据库 配置选项 syscurconfigs 主数据库 当前配置选项 sysdatabases 主数据库转载 2007-05-15 23:02:00 · 875 阅读 · 0 评论 -
sql简单事例
事例一:排序ORDER BY子句可包括未出现在此选择列表的项目.然而,如果指定SELECT DISTINCT,则排序列必定出现在选择列表中.错误的语句:SELECT DISTINCT 书名 FROM tb_BookStore ORDER BY 现存数量正确的语句:SELECT DISTINCT (书名),现存数量 FROM tb_BookStore ORDER BY 现存数量(2转载 2007-08-09 14:25:00 · 1024 阅读 · 0 评论 -
SqlServer数据库置疑的解决办法
SqlServer数据库置疑的解决办法关键词: SqlServer 置疑 工作中已经碰到两次这种情况了,想想还是应该把他记录下来,利人利己。通常这个问题是由于硬盘空间不够或硬盘读写错误造成的。问题现象:数据库后面有“置疑”字样,查看系统事务日记出现以下错误:错误1-----------转载 2007-07-23 18:19:00 · 5252 阅读 · 1 评论 -
ASP.NET2.0连接SQL Server数据库详解
ASP.NET2.0连接SQL Server数据库详解本文将详细介绍如何使用Connection对象连接数据库。对于不同的.NET数据提供者,ADO.NET采用不同的Connection对象连接数据库。这些Connection对象为我们屏蔽了具体的实现细节,并提供了一种统一的实现方法。 Connection类有四种:SqlConnection,OleDbConnection,OdbcConn转载 2007-07-23 21:16:00 · 667 阅读 · 0 评论 -
全文索引--作业,脚本
— 2007-5-15/9:33 上生成的脚本— 由: sa— 服务器: 172.17.193.35BEGIN TRANSACTION DECLARE @JobID BINARY(16) DECLARE @ReturnCode INT SELECT @ReturnCode = 0 IF (SELECT COUNT(*) FROM msdb.db原创 2007-07-19 14:27:00 · 832 阅读 · 0 评论 -
SQL Server连接中的常见错误
SQL Server连接中的四个最常见错误:一."SQL Server 不存在或访问被拒绝"这个是最复杂的,错误发生的原因比较多,需要检查的方面也比较多.一般说来,有以下几种可能性:1,SQL Server名称或IP地址拼写有误2,服务器端网络配置有误3,客户端网络配置有误要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因.============= 首先,转载 2007-07-25 12:59:00 · 623 阅读 · 0 评论 -
MS SQL server数据库开发精典技巧
1.按姓氏笔画排序: select * from tablename order by customername collate chinese_prc_stroke_ci_as 2.数据库加密: select encrypt(原始密码) select pwdencrypt(原始密码) select pwdcompare(原始密码,加密后密码) = 1--相同;否则不相同 encrypt(原始密转载 2007-07-25 16:11:00 · 638 阅读 · 0 评论 -
推荐的SQL Server语句和存储过程
推荐的SQL Server语句和存储过程*************************************************统计SQL数据表个数、占用字节*************************************************declare @id int declare @type character(2) declare @pages int d转载 2007-07-31 20:23:00 · 678 阅读 · 1 评论 -
SQL数据同步
MySQL数据同步主要有三种方式: 1.利用MySQL自身的数据库同步功能 2.利用MySQL数据库的特性(数据库存在固顶目录,并且以文件形式存储),进行数据库目录同步以达到数据同步目的 3.利用专用的MySQL数据库同步软件 1.利用MySQL自身的数据库同步功能(下面参考自网上的文章,写的非常详细了) MySQL从3.23.15版本以后提供数据库复制功能。利用该功能可以实现两个数据库同步,主从转载 2007-08-02 15:47:00 · 1484 阅读 · 0 评论 -
MSSQL数据库同步
MSSQL数据库同步 [font size=6]MSSQL数据同步[/font]MSSQL数据同步利用数据库复制技术实现数据同步更新(来自网络,也是非常完美的教程)复制的概念复制是将一组数据从一个数据源拷贝到多个数据源的技术,是将一份数据发布到多个存储站点上的有效方式。使用复制技术,用户可以将一份数据发布到多转载 2007-08-02 15:50:00 · 1081 阅读 · 0 评论 -
sql2005数据同步技术
以下实现复制步骤(以快照复制为例) 运行平台SQL SERVER 2005 一、准备工作: 1.建立一个 WINDOWS 用户,设置为管理员权限,并设置密码,作为发布快照文件的有效访问用户。 2.在SQL SERVER下实现发布服务器和订阅服务器的通信正常(即可以互访)。打开1433端口,在防火墙中设特例 3.在发布服务器上建立一个共享目录,作为发布快照文件的存放目录。例如:在转载 2007-08-02 15:53:00 · 1282 阅读 · 0 评论 -
sql优化技术杂谈
实际上,您可以把索引理解为一种特殊的目录。微软的SQL SERVER提供了两种索引:聚集索引(clustered index,也称聚类索引、簇集索引)和非聚集索引(nonclustered index,也称非聚类索引、非簇集索引)。下面,我们举例来说明一下聚集索引和非聚集索引的区别:其实,我们的汉语字典的正文本身就是一个聚集索引。比如,我们要查“安”字,就会很自然地翻开字典的前几页,因为“安”转载 2007-08-23 20:08:00 · 1196 阅读 · 2 评论 -
触发器、存储过程和函数三者有何区别?
触发器、存储过程和函数三者有何区别?回复:触发器、存储过程和函数三者有何区别? 触发器是特殊的存储过程,存储过程需要程序调用,而触发器会自动执行;你所说的函数是自定义函数吧,函数是根据输入产生输出,自定义只不过输入输出的关系由用户来定义。在什么时候用触发器?要求系统根据某些操作自动完成相关任务,比如,根据买掉的产品的输入数量自动扣除该产品的库存量。什么时候用存储过程?存储过程就是程序,它是经过转载 2007-05-26 21:45:00 · 878 阅读 · 0 评论 -
如何查一个表中所有字段是否包含某个关键词
declare @n varchar(30)declare @key varchar(20)set @key=关键字declare cur cursor forselect a.name from syscolumns a Inner Join systypes b on a.id=b.id where id=object_id(表) and b.name in(varchar,ch转载 2007-06-13 21:48:00 · 3832 阅读 · 0 评论 -
通过sql语句动态取得约束
declare @csname varchar(100)set @csname=select @csname=[name] --约束名称from sysobjects twhere id=(select cdefault from syscolumns where id=object_id(N表名) and name=字段名)--动态删掉约束exec(alter table转载 2007-06-17 14:47:00 · 890 阅读 · 0 评论 -
数据分成两份,每份都有各种类别,一份金额占60%左右
DECLARE @t TABLE(类别 varchar(10), 货号 int, 金额 int)INSERT @t SELECT 布类, 1112, 100UNION ALL SELECT 布类, 1142, 234UNION ALL SELECT 布类, 3112, 453UNION ALL SELECT 布类, 1314, 20UNION ALL SELECT 布类, 13转载 2007-06-17 16:34:00 · 717 阅读 · 0 评论 -
自动插数 1
CREATE Procedure AutoInsertas begindeclare @s1 varchar(8000),@s2 varchar(8000),@s3 varchar(8000)select @s1=insert into table1 select tagtime,@s2=,@s3=select @s1=@s1+,[+rtrim(tagname)+]=ma原创 2007-06-17 16:56:00 · 905 阅读 · 0 评论 -
自动插数 2
--exec dbo.p_InsertNR_YXRZUserTableCREATE proc dbo.p_InsertNR_YXRZUserTableAS--tbYXRZ_name,Flag:0 三班制,1 白班制,2 全天制后夜, 3 每周制, 4 每月制, 5 全天制前夜, 6 全天制白班--tbYXRZ_name,FlagOther:周,或月的第几天 DECLARE @time cha原创 2007-06-17 16:56:00 · 660 阅读 · 0 评论 -
用命令建立关系
--方法一:创建表时直接指定主键和外键if object_id(tbChild) is not null drop table tbChildGOif object_id(tbMaster) is not null drop table tbMasterGO----创建主键表create table tbMaster(id int identity(1,1) PRIMARY KEY,原创 2007-06-17 17:14:00 · 573 阅读 · 0 评论 -
关于MS SQLSERVER索引优化问题
**********************************************************Author:黄山光明顶mail:leimin@jxfw.comversion:1.0.0date:2004-1-30***********************************************************有一网友问:关于MS SQL转载 2008-04-22 08:51:00 · 991 阅读 · 0 评论 -
一个数据汇总,列合并的例子
-- 问题库存表A(现有库存) PARTNO PARTDESC VENDO GRADE SALESTYPE UNIT QTY A001 N-07 L KG 800 B005 M01 O KG 500 ..... 收货记录表B PARTNO VENDNO SALESTYPE ACTQTY IN原创 2008-08-05 11:05:00 · 823 阅读 · 0 评论 -
SQL SERVER 2005 同步复制技术
SQL SERVER 2005 同步复制技术 以下实现复制步骤(以快照复制为例) 运行平台SQL SERVER 2005 一、准备工作: 1.建立一个 WINDOWS 用户,设置为管理员权限,并设置密码,作为发布快照文件的有效访问用户。 2.在SQL SERVER下实现发布服务器和订阅服务器的通信正常(即可以互访)。打开1433端口,在防火墙中设特例 3.在发布服务器上建立一个共享目录,作为发布快转载 2008-05-29 16:59:00 · 649 阅读 · 0 评论 -
数据库设计中的14个关键技巧
数据库设计中的14个关键技巧 function StorePage(){d=document;t=d.selection?(d.selection.type!=None?d.selection.createRange().text:):(d.getSelection?d.getSelection():);void(keyit=window.open(http://ww转载 2008-05-29 17:03:00 · 977 阅读 · 0 评论 -
触发器
原帖:订单金额大于500,下订单会员自动升级VIP会员数据库有一个订单表,字段sumprice是金额,当金额大于500元时,下订单日期15日后就升级会员为VIP。字段username为会员。请问这样的存储过程要怎么写?怎么去触发它呢?能给出具体代码的给全部分。--------------------------------------------解答--建立用户表--usernam原创 2007-06-19 23:48:00 · 566 阅读 · 0 评论 -
根据交易金额确定会员是否升级为VIP
--建立用户表--username是主键,金额,和成为会员的日期CREATE TABLE tbOrder(username Varchar(100) PRIMARY KEY,sumprice Money,IsLeaguer Datetime)go--建立触发器--名称:tr_tbOrder--功能:当有用户的金额>=500时,自动确定他何时会成为会员,存放到IsLeaguer中CREATE T原创 2007-06-19 19:05:00 · 905 阅读 · 0 评论 -
问站A-站L最短乘车路线(SQL问题)
--问站A-站L最短乘车路线(SQL问题)CREATE TABLE T_Line(ID nvarchar(10), --公交线路号Station nvarchar(10), --站点名称Orders int) --行车方向(通过它反应每个站的上一个、下一个站)INSERT T_Line SELECT N8路 ,N站A,1 UNION ALLSELECT转载 2007-06-12 18:33:00 · 799 阅读 · 0 评论 -
sql分页存储过程
CREATE PROC sp_PageView@tbname sysname, --要分页显示的表名@FieldKey nvarchar(1000), --用于定位记录的主键(惟一键)字段,可以是逗号分隔的多个字段@PageCurrent int=1, --要显示的页码@PageSize int=10, --每页的大小(记录数)@FieldShow nvarchar(1000)=, --以逗号转载 2007-06-17 16:42:00 · 581 阅读 · 0 评论 -
自动建表 2
/*declare @Name varchar(20)set @Name = exec dbo.p_CreateYXRZTable @s_tablename=WWdcctrl12,@int=30,@dec=5,@strSm=0,@strMi=0,@strBig=0,@text=0,@message = @Name outselect @Name*/CREATE proc dbo.p原创 2007-06-17 16:53:00 · 569 阅读 · 0 评论 -
sql生成答题页面 ---- 判断题
Declare @s varchar(8000),@s1 varchar(1000), @s2 varchar(1000), @s3 varchar(1000),@str varchar(1000),@i int,@ii int,@ss varchar(100)select @s1 = ,@s2 =原创 2007-06-17 17:07:00 · 1016 阅读 · 0 评论 -
sql生成答题页面 ---- 选择题
Declare @s varchar(8000),@s1 varchar(1000), @s2 varchar(1000), @str varchar(1000),@str2 varchar(8000),@i int,@ii int,@iii int,@ss varchar(100),@iFlag intselect @s1 = ,@s2 =原创 2007-06-17 17:10:00 · 803 阅读 · 0 评论