当前位置:文档之家› SQL学习心得

SQL学习心得

SQL学习心得
SQL学习心得

SQL(Structured Query Language)

--- 结构化查询语言

SQL是在关系数据库中执行数据操作,检索,维护所使用的标准语言,可以用来查询数据,操作数据,定义数据,控制数据

执行SQL语句时用户只需要知道其逻辑含义,而不需要知道SQL语句的具体执行步骤。

------数据库对象通常包含表,视图,索引,序列【数据定义语言DDL】-->表结构

Data Definition Language,用于建立,修改,删除数据库对象,不需要事务的参与,自动提交。

——CREATE:创建表或其他对象的结构

CREATE TABLE table_name(

column_name datatype [DEFAULT expr],

………………………………………………

);

Eg:--创建表emp

CREATE TABLE emp(

id NUMBER(10),

name VARCHAR2(20),

gender CHAR(1),

birth DATE,

salary NUMBER(6,2),

job VARCHAR2(30),

deptid NUMBER(2)

);

——ALTER:修改表或其他对象的结构

修改表名:

RENAME old_name TO new_name (新表名不能使数据库中已有的表)

增加列:

ALTER TABLE table_name ADD

(column_name datatype[DEFAULT],

……………………………);(新增列只能在表的最后一列追加)

删除列:

ALTER TABLE table_name DROP

(column_name);(删除不需要的列)

删除字段需要从每行中删掉该字段占据的长度和数据,并释放在数据块中占据的空间,如果表记录比较大,删除字段可能需要比较长的时间。

修改列:

ALTER TABLE table_name MODIFY

(column_name datatype[DEFAULT],

……………………………);(修改仅对以后插入的数据有效,

修改字段前的所有数据不受影响)修改时一般类型不改,改长度,尽量往长里改,因为如果表中已经有数据的情况下,把长度由大改小,有可能不成功

——DROP:删除表或其他对象的结构

DROP TABLE table_name

——TRUNCATE:删除表数据,保留表结构

TRUNCATE TABLE table_name

可以通过DESC table_name 查看表结构

【数据操作语言DML】-->表结构中的数据 Data Manipulation Language,用于改变数据表中的数据,和事务是相关,执行完DML操作后必须经过事务控制语句提交后才真正的将改变应用到数据库中

——INSRET:将数据插入到数据表中

INSERT INTO table_name[(column[, column…])]

VALUES(value[, value…]); (每执行一次增加一条记录)

指定向哪些列插入对应的值,没有指定的列:若

设有默认值(DEFAULT),那么插入的就是该默

认值,否则插入null,若某列设为not null,执

行INSERT语句时又没指定该列,那么插入会抛

出违反不为空的约束条件,若不写指定的列,默

认所有列插入,每一列的值VALUE都不能少

——UPDATE:更新数据表中已存在的数据

UPDATE table_name

SET column = value[,column = value]……

[WHERE condition]; --若不写where子句,全表所有行的column都被更新——DElETE:删除表中的数据

DELETE [FROM] table_name

[WHERE condition]; --若不写where子句,全表所有行数据都被删除

另注意与DDL中的TRUNCATE的区别:

* 二者都是删除表记录,DELETE可以有条件的删(WHERE),TRUNCATE是将表数据全部删除 * DELETE是DML,可以回退(ROLLBACK),TRUNCATE是DDL,立即生效,无法回退

* 如果删除的是全部表记录,且数据量较大,TRUNCATE速度更快

【事务控制语言TCL】

Transaction Control Language,用来维护数据的一致性——COMMIT:提交,确认已经进行的数据改变

——ROLLBACK:回滚,取消已经进行的数据改变

——SAVEPOINT:保存点,使当前事务可以回退到指定的保存点,便于取消部分改变

日志删除恢复数据库

删除数据库日志文件 设置数据库为紧急模式 ?停掉SQL Server服务; ?把应用数据库的数据文件XXX_Data.mdf移走; ?重新建立一个同名的数据库XXX; ?停掉SQL服务; ?把原来的数据文件再覆盖回来; ?运行以下语句,把该数据库设置为紧急模式; 运行“Use Master Go sp_configure 'allow updates', 1 reconfigure with override Go” 执行结果: DBCC 执行完毕。如果DBCC 输出了错误信息,请与系统管理员联系。 已将配置选项'allow updates' 从0 改为1。请运行RECONFIGURE 语句以安装。 接着运行“update sysdatabases set status = 32768 where name = 'XXX'” 执行结果: (所影响的行数为1 行) ?重启SQL Server服务; ?运行以下语句,把应用数据库设置为Single User模式; 运行“sp_dboption 'XXX', 'single user', 'true'” 执行结果: 命令已成功完成。 ?做DBCC CHECKDB;

运行“DBCC CHECKDB('XXX')” 执行结果: 'XXX' 的DBCC 结果。 'sysobjects' 的DBCC 结果。 对象'sysobjects' 有273 行,这些行位于5 页中。 'sysindexes' 的DBCC 结果。 对象'sysindexes' 有202 行,这些行位于7 页中。 'syscolumns' 的DBCC 结果。 ……… ?运行以下语句把系统表的修改选项关掉; 运行“sp_resetstatus "XXX" go sp_configure 'allow updates', 0 reconfigure with override Go” 执行结果: 在sysdatabases 中更新数据库'XXX' 的条目之前,模式= 0,状态= 28(状态suspect_bit = 0), 没有更新sysdatabases 中的任何行,因为已正确地重置了模式和状态。没有错误,未进行任何更改。 DBCC 执行完毕。如果DBCC 输出了错误信息,请与系统管理员联系。 已将配置选项'allow updates' 从1 改为0。请运行RECONFIGURE 语句以安装。 ?重新建立另外一个数据库XXX.Lost; DTS导出向导 ?运行DTS导出向导; ?复制源选择EmergencyMode的数据库XXX,导入到XXX.Lost;

2021年SQL语句大全实例

SQL语句实例 欧阳光明(2021.03. 07) 表操作 例1对于表的教学管理数据库中的表STUDENTS ,可以定义如下: CREATE TABLE STUDENTS (SNO NUMERIC (6, 0) NOT NULL SNAME CHAR (8) NOT NULL AGE NUMERIC(3,0) SEX CHAR(2) BPLACE CHAR(20) PRIMARY KEY(SNO)) 例2对于表的教学管理数据库中的表ENROLLS ,可以定义如下:CREATE TABLE ENROLLS (SNO NUMERIC(6,0) NOT NULL CNO CHAR(4) NOT NULL GRADE INT PRIMARY KEY(SNO,CNO) FOREIGN KEY(SNO) REFERENCES STUDENTS(SNO) FOREIGN KEY(CNO) REFERENCES COURSES(CNO)

*欧阳光明*创编2021.03.07 CHECK ((GRADE IS NULL) OR (GRADE BETWEEN 0 AND 100))) 例3根据表的STUDENTS表,建立一个只包含学号.姓名.年龄的女学生表。 CREATE TABLE GIRL AS SELECT SNO, SNAME, AGE FROM STUDENTS WHERE SEX=女?; 例4删除教师表TEACHER。 DROP TABLE TEACHER 例5在教师表中增加住址列。 ALTER TABLE TEACHERS ADD (ADDR CHAR(50)) 例6把STUDENTS表中的BPLACE列删除,并且把引用 BPLACE列的所有视图和约束也一起删除。 ALTER TABLE STUDENTS DROP BPLACE CASCADE 例7补充定义ENROLLS表的主关键字。 ALTER TABLE ENROLLS ADD PRIMARY KEY (SNO,CNO);

Oracle EBS API使用说明

Oracle EBS API使用说明 Samt007@https://www.doczj.com/doc/2511505105.html, 2014-1-11 API是Oracle EBS的一个很重要的部分,是Oracle EBS标准程序与我们客制的程序或者外围系统的一个桥梁。我们经常遇到一个问题:对于某个功能,Oracle是否提供标准的API给我们使用?如果有,则可以方便批量导入新的数据或者批量处理业务数据。 对于常用的EBS API说明以及相关的使用,黄建华的一篇文档< Oracle EBS 常用接口开发参考>已经说明得很到位。但是这也是常用的API开发说明而已。对于非常用的,我们如何寻找其API的相关信息? 其实,Oracle有一个职责:集成信息库,方便我们查找API的相关信息。这里基本是包括Oracle所有API信息。这里可以提供给我们一个API的寻找方向。但是,缺点是说明得不够详细,不够具体,最麻烦的是没客制化使用的例子。所以很多东西最终还是得自己去好好研究它,然后将自己的研究成果和例子记录下来整理成文档,像黄建华一样。 当然,也可以去Meterlink上面找相关的接口表的信息。 详细说明: 1.Oracle EBS自带的说明文档。 Oracle API用途说明职责: 职责名称:集成信息库 职责关键字:FND_REP_APP

从标准画面知道,物料保留功能的基表是MTL_RESERVATIONS。接着从下面(下图)的说明: processes records from MTL_RESERVATIONS_INTERFACE table into MTL_RESERVATIONS table 了解到这个API是处理标准保留表的信息。 接着就是重点了,知道处理的Procedure了,怎么知道是如何处理的?以及这个Procedure对应的是那个PKG?可以用下面这段SQL查询: SELECT * FROM ALL_PROCEDURES WHERE PROCEDURE_NAME LIKE '%RSV_INTERFACE_MANAGER%' 注意:如果查询不到, 请用:SELECT * FROM ALL_OBJECTS WHERE OBJECT_NAME LIKE '%RSV_INTERFACE_MANAGER%'

解决SQL数据库日志已满的问题

解决SQL数据库日志已满的问题 1、右键数据库→属性→选项→故障还原模型→设为简单→确定; 2、右键数据库→所有任务→收缩数据库→确定; 3、右键数据库→属性→选项→故障还原模型→设为大容量日志记录→确定。 二、复杂方法 1、清空日志 DUMP TRANSACTION库名WITH NO_LOG 2、截断事务日志 BACKUP LOG数据库名WITH NO_LOG 3、收缩数据库文件(如果不压缩,数据库的文件不会减小) 企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件 --选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了。 --选择数据文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了 也可以用SQL语句来完成 --收缩数据库 DBCC SHRINKDATABASE(客户资料) --收缩指定数据文件,1是文件号,可以通过这个语句查询到:select * from sysfiles DBCC SHRINKFILE(1) 4、为了最大化的缩小日志文件(如果是sql 7.0,这步只能在查询分析器中进行) a.分离数据库 企业管理器--服务器--数据库--右键--分离数据库 b.在我的电脑中删除LOG文件 c.附加数据库 企业管理器--服务器--数据库--右键--附加数据库 此法将生成新的LOG,大小只有500多K 或用代码: 下面的示例分离pubs,然后将pubs 中的一个文件附加到当前服务器。 a.分离 EXEC sp_detach_db @dbname = 'pubs' b.删除日志文件 c.再附加 EXEC sp_attach_single_file_db @dbname = 'pubs',@physname = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf' 5、为了以后能自动收缩,做如下设置 企业管理器--服务器--右键数据库--属性--选项--选择"自动收缩" --SQL语句设置方式: EXEC sp_dboption '数据库名', 'autoshrink', 'TRUE' 6、如果想以后不让它日志增长得太大 企业管理器--服务器--右键数据库--属性--事务日志 --将文件增长限制为xM(x是你允许的最大数据文件大小) --SQL语句的设置方式: alter database 数据库名modify file(name=逻辑文件名,maxsize=20)

数据库_经典SQL语句大全

一、基础 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 [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 tabname 6、说明:增加一个列 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 viewname 10、说明:几个简单的基本的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

Oracle+EBS+常用接口开发参考

IBM WPF快速集成Oracle EBS 责任编辑:胡铭娅作者:IT168 IvanZhang2007-12-27 【内容导航】 ?第1页:WPF简介 ?第2页:WPF集成Oracle EBS方法概述 ?第3页:创建WPF项目 ?第4页: 物料详细信息页 ?第5页:富文本内容约束文件 ?第6页:开发模型主要步骤 ?第7页:创建服务操作 ?第8页:开发服务使用者模型 ?第9页:封装成Portlet部署到Websphere Portal ? 展开全部 文本Tag:IBM Oracle WPF数据库 【IT168 专稿】 摘要:本文通过实战探讨利用IBM Websphere Portlet Factory(WPF)集成Oracle E-Business Suite(EBS),内容涉及WPF的相关概念,WPF中的服务构建器的使用,集成Oracle ERP的方法,Oracle接口表使用,Porlet的创建及部署等。 Websphere Portal作为广泛使用的门户解决方案,从6.0版本开始,提供WPF作为Portlet开发工具。WPF针对SAP、Lotus Domino、Excel、Siebel、PeopleSoft等提供了相应的适配器,但目前尚未发布针对Oracle EBS的标准适配器。本文通过利用WPF开发工具,结合OracleEBS提供的标准接口,快速开发,无需编码,即可实现对OracleEBS的CRUD(Create-Read-Update-Delete,把OracleEBS中的业务功能集成到企业统一门户。 1. WPF简介 WebSphere Portlet Factory软件包括一个框架和一组为了快速创建和维护定制portlet的工具。利用WebSphere Portlet Factory的框架和工具,开发人员可以通过托拽一系列高度适应、可重用的软件组件(被称作构建器,builder)快速地搭建portlet。用户将构建器组装到模型中,就像通过快速地将公式放在一起组成电子表格一样。这些模型接下来在运行环境中被执行来动态地生成应用代码,包括JSP,Java类和XML文档,所有这些组件(artifact)一起组成了portlet应用程序。这样,开发人员可以将动态构建portlet的流程捕获并使之

SQL Server 数据库清除日志的方法

SQL Server 数据库清除日志的方法 方法一: 1、打开查询分析器,输入命令 BACKUP LOG database_name WITH NO_LOG 2、再打开企业管理器--右键要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至xxm,这里会给出一个允许收缩到的最小m数,直接输入这个数,确定就可以了。 方法二: 设置检查点,自动截断日志 一般情况下,SQL数据库的收缩并不能很大程度上减小数据库大小,其主要作用是收缩日志大小,应当定期进行此操作以免数据库日志过大 1、设置数据库模式为简单模式:打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server-->SQL Server组-->双击打开你的服务器-->双击打开数据库目录-->选择你的数据库名称(如用户数据库cwbase1)-->然后点击右键选择属性-->选择选项-->在故障还原的模式中选择“简单”,然后按确定保存 2、在当前数据库上点右键,看所有任务中的收缩数据库,一般里面的默认设置不用调整,直接点确定 3、收缩数据库完成后,建议将您的数据库属性重新设置为标准模式,操作方法同第一点,因为日志在一些异常情况下往往是恢复数据库的重要依据 方法三:通过SQL收缩日志 把代码复制到查询分析器里,然后修改其中的3个参数(数据库名,日志文件名,和目标日志文件的大小),运行即可 SET NOCOUNT ON DECLARE @LogicalFileNamesysname, @MaxMinutes INT, @NewSize INT USE tablename -- 要操作的数据库名 SELECT @LogicalFileName = 'tablename_log', -- 日志文件名 @MaxMinutes = 10, -- Limit on time allowed to wrap log. @NewSize = 1 -- 你想设定的日志文件的大小(M) -- Setup / initialize DECLARE @OriginalSizeint SELECT @OriginalSize = size FROM sysfiles WHERE name = @LogicalFileName SELECT 'Original Size of ' + db_name() + ' LOG is ' + CONVERT(VARCHAR(30),@OriginalSize) + ' 8K pages or ' + CONVERT(VARCHAR(30),(@OriginalSize*8/1024)) + 'MB' FROM sysfiles WHERE name = @LogicalFileName CREATE TABLE DummyTrans (DummyColumn char (8000) not null) DECLARE @Counter INT,

最新常用经典SQL语句大全完整版

常用经典SQL语句大全完整版--详解+实例下列语句部分是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 [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 tabname 6、说明: 增加一个列: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语句大全完整版教学文案

常用经典S Q L语句大 全完整版

常用经典SQL语句大全完整版--详解+实例下列语句部分是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 [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 tabname 6、说明: 增加一个列: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….)

最新数据库日志清除语句

数据库日志清除语句 当数据库的日志文件太大,磁盘没有空间不能做单据时,我们可以用下面的方法直接清除日志: 2008版本以下的数据库执行以下整个语句: --标准 use数据库名称 go backup log数据库名称with no_log dbcc shrinkfile(2) --实例 use DSCSYS go backup log DSCSYS with no_log dbcc shrinkfile(2) 说明: 不论是公司数据库还是公用数据库,只要把数据库名称全部替换了即可。 2008版本以上的数据库执行以下整个语句: --标准 USE[master] GO ALTER DATABASE DNName SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE DNName SET RECOVERY SIMPLE GO USE DNName GO DBCC SHRINKFILE(N'FILEName_Log', 11,TRUNCATEONLY) GO USE[master] GO ALTER DATABASE DNName SET RECOVERY FULL WITH NO_WAIT GO ALTER DATABASE DNName SET RECOVERY FULL GO

--实例 USE[master] GO ALTER DATABASE DEMO90SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE DEMO90SET RECOVERY SIMPLE GO USE DEMO90 GO DBCC SHRINKFILE(N'outside_Log', 11,TRUNCATEONLY) GO USE[master] GO ALTER DATABASE DEMO90SET RECOVERY FULL WITH NO_WAIT GO ALTER DATABASE DEMO90SET RECOVERY FULL GO 说明: 1.标准示例中的DNName及实例中的DEMO90表示的是数据库名称,就是下图看到的名字

清除数据和清除日志

清除数据和清除日志 一.清除出去的数据 本功能支持工作流运行数据(工作流运行过程中产生的实例、日志信息)的清除,清除出去的数据,以后如果需要还可以通过还原工作流数据功能恢复到系统中。 操作说明 1.系统管理员Admin登录后,在"系统管理"主界面,选择【系统】菜单中的【数据清除】-【清除工作流数据】,点击进入清除工作流功能界面。 2.在数据清除界面, 根据'起止年度'确定 需要操作的账套库 后,可以选择按日期 范围或按单据类型进 行清除:

3.清除方式选择'按日期范围',可以进一步在'时间条件'中选择具体的日期范围。选择后将清除该账套库中终审时间在指定日期范围内的所有单据类型的工作流数据。 4.清除方式选择'按单据',可以进一步在'单据条件'中选择具体单据及其过滤条件。设置后将清除该账套库中指定单据类型的满足条件的工作流数据。 5.'选择单据类型'左侧显示本账套库中存在工作流数据的单据类型,从左侧选中需要清除工作流数据的单据类型,点击选择到右侧; 6.选定各个单据类型还可以在'设置单据条件'中设置更加明细的过滤条件。 7.点击〖下一步〗按钮,还会显示将要清除的工作流数据的信息列表以再次确认。 8.确认无误后,点击〖清除〗,在弹出框中选择备份文件存放路径,〖确定〗后将把所选的工作流数据备份到指定路径,并删除账套库内相应数据。 注意: 只有系统管理员Admin可执行工作流数据的清除。 选择好需要清除的工作流数据范围以后,在确认列表底部将显示出将清除数据的数据量大小。

二.清除日志 本功能支持各种日志类数据的清除,包括业务功能操作日志、数据操作日志、系统管理操作日志。清除出去的数据,以后如果需要还可以通过还原日志功能恢复到系统中。 操作说明 1.管理员登录后,在"系统管理"主界面,选择【系统】菜单中的【数据清除】-【清除日志】,点击进入清除日志功能界面。如图 2.在数据清除界面,左侧选 择不同的历史数据类型,右侧选择需要卸出数据的账套、年度,以及数据的日期范围,录入或选择备份文件存放路径后,点击〖清除〗按钮,将把所选的账套历史数据备份到指定路径,并删除账套内相应数据,同时提示用户保管好备份文件。 3.历史数据类型说明 4.数据操作日志:各类业务数据的操作日志,包括单据、档案的操作日志、业务参数变更日志等; 5.业务系统上机日志:各类业务功能操作的日志,包括登录门户、

几种清除MSSQL日志方法

方法一、 1 / 4

2 / 4 方法二、

MS SQL清除日志的命令 如何清除sql server 日志? 设置数据库为简单模式,自动收缩 1.打开查询分析器,输入命令 backup log databasename with no_log 2.再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M 数,直接输入这个数,确定就可以了。 dbcc shrinkfile (databasename_log,truncateonly) 方法三、 1: 删除LOG 第1步:分离数据库企业管理器->服务器->数据库->右键->分离数据库 第2步:删除LOG文件 第3布:附加数据库企业管理器->服务器->数据库->右键->附加数据库 此法生成新的LOG,大小只有500多K 再将此数据库设置自动收缩 方法四、 EXEC sp_detach_db @dbname = 'pubs' EXEC sp_attach_single_file_db @dbname = 'pubs', @physname = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf' 方法五、 Use Database_Name Backup Log Database_Name With No_log dbcc shrinkfile (Database_Name_Log,truncateonly) Go 方法六、 直接在查询分析那里执行backup log databasename with no_log 然后回到企业管理器把数据库收缩一下(可能需另外设置属性) 3 / 4

数据库日志满的删除方法

解决SQL数据库日志已满的问题 2009年03月21日星期六上午 11:53 一、简单方法 1、右键数据库→属性→选项→故障还原模型→设为简单→确定; 2、右键数据库→所有任务→收缩数据库→确定; 3、右键数据库→属性→选项→故障还原模型→设为大容量日志记录→确定。 二、复杂方法 1、清空日志 DUMP TRANSACTION 库名WITH NO_LOG 2、截断事务日志 BACKUP LOG 数据库名WITH NO_LOG 3、收缩数据库文件(如果不压缩,数据库的文件不会减小) 企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件 --选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了 --选择数据文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了 也可以用SQL语句来完成 --收缩数据库 DBCC SHRINKDATABASE(客户资料) --收缩指定数据文件,1是文件号,可以通过这个语句查询到:select * from sysfiles DBCC SHRINKFILE(1) 4、为了最大化的缩小日志文件(如果是sql 7.0,这步只能在查询分析器中进行) a.分离数据库 企业管理器--服务器--数据库--右键--分离数据库 b.在我的电脑中删除LOG文件 c.附加数据库 企业管理器--服务器--数据库--右键--附加数据库 此法将生成新的LOG,大小只有500多K 或用代码: 下面的示例分离 pubs,然后将 pubs 中的一个文件附加到当前服务器。 a.分离 EXEC sp_detach_db @dbname = 'pubs' b.删除日志文件 c.再附加 EXEC sp_attach_single_file_db @dbname = 'pubs',@physname = 'c:\Program Files\Microsoft SQL

数据库经典SQL语句大全

数据库经典SQL语句大全 篇一:经典SQL语句大全 下列语句部分是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:mssql7backupMyNwind_1.dat' --- 开始备份 BACKUP DATABASE pubs TO testBack 4、说明:创建新表

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 only 5、说明: 删除新表: tabname 6、说明: 增加一个列: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 注:索引是不可更改的,想更改必须删除重新建。

Oracle EBS常用表和视图

fnd_user 系统用户表 fnd_application 应用信息表 FND_PROFILE_OPTIONS_VL 系统配置文件 fnd_menus 菜单 fnd_menu_entries_tl FND_NEW_MESSAGES 消息表 FND_FORM 表单表 FND_CONCURRENT_PROGRAMS_VL 并发程序视图 FND_CONCURRENT_PROGRAMS_TL FND_CONCURRENT_PROGRAMS FND_DESCR_FLEX_COL_USAGE_VL FND_DESCR_FLEX_COL_USAGE_TL FND_DESCR_FLEX_COLUMN_USAGES FND_EXECUTABLES_FORM_V 可执行并发程序视图FND_EXECUTABLES_TL FND_EXECUTABLES FND_DESCRIPTIVE_FLEXS FND_CONC_REQ_SUMMARY_V 并发请求视图FND_CONCURRENT_REQUESTS FND_RESPONSIBILITY 职责表

FND_RESPONSIBILITY_VL 职责FND_USER_RESP_GROUPS 用户职责 fnd_flex_value_sets 值集表 FND_FLEX_VALUES FND_IREP_ALL_INTERFACES 接口表 FND_IREP_CLASSES Fnd_Irep_Classes_Tl fnd_territories_vl 国家视图 fnd_log_messages 日志表 fnd_form_functions 功能 FND_DOCUMENT_SEQUENCES 单据序列 FND_DOC_SEQUENCE_ASSIGNMENTS 序列分配 fnd_id_flexs 关键弹性域定义表 FND_ID_FLEX_STRUCTURES 弹性域结构表 FND_ID_FLEX_SEGMENTS 弹性域段表 fnd_descriptive_flexs 描述性弹性域属性表 FND_DESCR_FLEX_CONTEXTS 弹性域列类别表 FND_DESCR_FLEX_COLUMN_USAGES 弹性域列类别属性表FND_FLEX_VALUE_SETS 值集表 FND_FLEX_VALUES 值表 Fnd_Flex_Values_Tl 值描述表

清除sql2000日志文件

sql 2000 事务日志的介绍及收缩 1、事务日志简介 作为大型的关系型数据库,最重要的事情之一就是数据库完整性,也就是说数据必须是正确的,不能因为一些不可知的突发事件(如突然掉电)损坏数据。为了避免这种情况,SQL数据库采用了两步写入磁盘的办法,第一步先写我做了什么,比如开了一个进货单,这一步完成后,再执行第二步,把这个进货单的内容写入数据库,这两步都成功了,才算完成,有一步有问题,这个单据都不会记到数据库中。这样,您的事务操作(对数据库的修改操作,查询不记事务)的每一步都要记录进日志文件,如果您不注意经常截断事务日志的话,随着时间的增长,事务日志会很快的增长,最后要比您的数据量大的多。可以经常看到,数据库文件只有几十兆,而日志文件却几千兆的情况。 2、截断事务日志 事务日志分成两部分,一部分是不活动的,也就是说这部分的操作都已经成功的写入数据库了,而另一部分是活动的,也就是说,这部分日志,只是确认执行了上述第一步,还没有确信已经写入数据库的部分。我们需要截断的就是不活动的部分。这部分可以如下方法截断:Backup Log ‘数据库名’with truncate_only 警告:在运行上述截断日志之后,强烈建议进行数据库完全备份。 3、缩小文件大小 使用上述第2步就把不活动的日志删除了,但是文件并没有变小,只是把原先旧日志占用的空间释放了,又可以向里面记入新的日志了。要想把物理文件也变小(比如已经几千兆了),请使用如下命令:DBCC Shrinkdatabase (数据库名) 运行上述命令后就可以把日志文件缩小了(一般都缩为1M左右) 4、把数据文件或日志文件的增长不受限制 如果您做不到经常维护数据库,不能经常的截断日志,日志文件就会逐渐变大,一旦大到您设置的大小限制,日志就再也不能写入了,您对数据库的所有改变操作也就无法进行了,这时候您就需要用上面的方法把日志文件截断。不过,您可以把文件的大小设置大一些或不受限制,请在企业管理器中设置数据库属性即可。也可以运行下述命令:alter database 数据库名modify file (name = 逻辑文件名,Maxsize =

精妙SQL语句收集

精妙SQL语句收集 摘要:一、基础 二、提升 三、技巧 正文: SQL语句先前写的时候,很容易把一些特殊的用法忘记,我特此整理了一下SQL语句操作。 一、基础 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 [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 tabname 6、说明:增加一个列 Alter table tabname add column col type 注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加var char类型的长度。 7、说明:添加主键:Alter table tabname add primary key(col)

ebs form开发总结

1.前言 这是在深航2期项目期间学习form的过程中总结出来的一些东西,但内容比较零散,不包含form开发的完整过程。

1.开发规范 1.1 命名规范 文件命名: 一般将源码放在….\SVN\05.客户化开发\05.源代码\ 目录下,文件的格式参考该目录下的代码包模板:开发编号-开发项名称文件夹,该文件夹命名如:EAM010_资产报废计划EAM代表模块,010和资产报废计划是由开发文档给出,不需要自己取编号。 路径:05.源代码\代码包模板:开发编号-开发项名称\SZAXXXXX\code 中,SZAXXXXX 也有自己的命名规范,一般取表名称的前6个字符,即应用名+模块名,在取表名后的5-6字符作为后缀,例如:表名是SZA_EAM_RETIRE_PLAN ,则取SZAEAMREPLAN,该文件夹名称与form名称保持一致。 SVN模板目录: Sql :注册弹性域的plsql代码块,名称与表名一致 Table :建表脚本 View :建视图脚本 Pck : 基于视图的增删改form,在hss_public_util程序包中,Table_Handle_Pkg这个过程生成的代码要在数据库中执行,并且代码保存在package文件夹下,并以.pck保存。 Form_Table_Handle这个过程是要放在form中 Form规范 1.Form的命名:例如表名SZA_INV_TST_DOC_TYPES,选取前6个字符SZAINV,加上后面字符串的5-6个字符,SZAINVTSTDOCTP. 2. 块名命名:SZA_INV_TST_DOC_TYPES选表中间字段TST_DOC 3.窗口查询的块QUERY_FIND 的名称:块名+QF,对应的FIX和STK画布名字也要保持一致,但是QUERY_FIND触发器名称不能修改。 4.在ebs上注册表单,功能,弹性域时,form表单,功能和弹性域名称:SZA INV:+中文解释,

50个经典sql语句总结

一个项目涉及到的50个Sql语句(整理版) --1.学生表 Student(S,Sname,Sage,Ssex) --S 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学生性别--2.课程表 Course(C,Cname,T) --C --课程编号,Cname 课程名称,T 教师编号 --3.教师表 Teacher(T,Tname) --T 教师编号,Tname 教师姓名 --4.成绩表 SC(S,C,score) --S 学生编号,C 课程编号,score 分数 */ --创建测试数据 create table Student(S varchar(10),Sname nvarchar(10),Sage datetime,Ssex nvarchar(10)) insert into Student values('01' , N'赵雷' , '1990-01-01' , N'男') insert into Student values('02' , N'钱电' , '1990-12-21' , N'男') insert into Student values('03' , N'孙风' , '1990-05-20' , N'男') insert into Student values('04' , N'李云' , '1990-08-06' , N'男') insert into Student values('05' , N'周梅' , '1991-12-01' , N'女') insert into Student values('06' , N'吴兰' , '1992-03-01' , N'女') insert into Student values('07' , N'郑竹' , '1989-07-01' , N'女') insert into Student values('08' , N'王菊' , '1990-01-20' , N'女') create table Course(C varchar(10),Cname nvarchar(10),T varchar(10)) insert into Course values('01' , N'语文' , '02') insert into Course values('02' , N'数学' , '01') insert into Course values('03' , N'英语' , '03') create table Teacher(T varchar(10),Tname nvarchar(10)) insert into Teacher values('01' , N'张三') insert into Teacher values('02' , N'李四') insert into Teacher values('03' , N'王五') create table SC(S varchar(10),C varchar(10),score decimal(18,1)) insert into SC values('01' , '01' , 80) insert into SC values('01' , '02' , 90) insert into SC values('01' , '03' , 99) insert into SC values('02' , '01' , 70) insert into SC values('02' , '02' , 60) insert into SC values('02' , '03' , 80) insert into SC values('03' , '01' , 80) insert into SC values('03' , '02' , 80) insert into SC values('03' , '03' , 80) insert into SC values('04' , '01' , 50) insert into SC values('04' , '02' , 30) insert into SC values('04' , '03' , 20) insert into SC values('05' , '01' , 76) insert into SC values('05' , '02' , 87)

相关主题
文本预览
相关文档 最新文档