`
lchlrb
  • 浏览: 6392 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
最近访客 更多访客>>
社区版块
存档分类
最新评论

常用SQL语句

阅读更多
关键字: sql语句 常用
--显示当前用户
show user

--显示表结构
desc sun1

--显示ORACLE数据库中所有的表
select * from tabs

--显示表的所有列的属性
select *
from cols
where table_name = 'SUN1'

--显示表的列总数
SELECT COUNT(*)
FROM USER_TAB_COLUMNS
WHERE TABLE_NAME=UPPER('sun1')

--显示表的索引信息
select * from user_indexes
where table_name = upper( 'sun2' )

--找数据库表的主键字段的名称
SELECT *
FROM user_constraints
WHERE CONSTRAINT_TYPE='P'
and table_name='TABLE_NAME';

--显示用户的权限
select *
from dba_sys_privs
where grantee = upper( username );

--显示表注释
select *
from user_tab_comments
where comments is not null
and table_name = upper( 'sun2' );

--测试查询时间
set timing on ;
--再查询操作

-----------------------------------函数使用------------------------------------------
--取随机数
dbms_random.random

--10进制转换成16进制
select to_char(125,'XXXXX') from dual
--或者
select to_char(125, 'xxxxx' ) from dual

--16进制转换成10进制
select to_number( '7D', 'XX') from dual

--取本月最后一天的日期
SELECT LAST_DAY(SYSDATE) FROM DUAL

---------------------------------建表-----------------------------------------------

--简单建表
create table sun1( col1 varchar2(10), col2 varchar2(10 ) );

--非空,带CHECK,唯一值的建表
create table student
(
sno int not null unique,
sname varchar(20) unique check( sname <> '' ),
ssex bit,
sage int check( sage<150 and sage >=0 ),
sdept varchar(20)
)

--带主键,带默认值的建表
create table sun2(
col1 number(10) primary key,
col2 varchar(2) not null,
col3 varchar(3) default '111'
)

--主键有多列的建表
create table sun2(
col1 number(10) not null ,
col2 varchar(2) not null,
col3 varchar(3) default '111',
constraint pk_sun2 primary key( col1, col2 )
)

--通过一现有的表,建一个与之结构完全一样的表
create table sun2 as
select * from sun1 where rownum < 1

--建一与现有的表完全一样的表(数据也一样)
create table sun2 as
select * from sun1

--创建会话临时表
create global temporary table tmp_sun
(
col1 number(10,1),
col2 number(1)
)
on commit preserve rows

--创建事务临时表
create global temporary table tmp_sun
(
col1 number(10,1),
col2 number(1)
)
on commit delete rows

--创建同义词
create synonym sunsun for sun1;

--为表加上注释
comment on table sun2 is '测试用的表'

--为表中的某列加上注释
comment on column sun2.col1 is '第一列'

--删除表的主键
alter table sun2 drop constraint pk_sun2;

--增加表的主键
alter table sun2 add constraint pk_sun2 primary key( col1 );

--给表增加外键
ALTER TABLE 表名
ADD CONSTRAINT 约束名
FOREIGN KEY(列名) REFERENCES 被引用表名(被引用列名);

--建索引
CREATE INDEX 索引名 ON 表名(列名1, 列名2);

--增加表的列
alter table sun2 add( col1 number(10), col4 char )

--修改表的列
alter table sun2 modify col1 char

--删除表的列
alter table sun2 drop column col1;


--修改列名
alter table sun2 rename column col1 to colNew

--修改表名
alter table sun2 rename to sun8

---------------------------------查询数据---------------------------------------------
--给查询到的数据加锁
select * from sun1 for update

--取上个月的今天
select nvl( add_months( sysdate, -1), null) from dual

---------------------------------插入数据---------------------------------------------
--简单的插入数据
insert into sun1( col1, col2 ) values( 'ab', 'ba' )
--或者
insert into sun1 values( 'ab', 'ba' )

--通过子查询向表中插入数据
insert into sun1
(
select 'aa', 'bb' from dual
union all
select 'aa', 'bb' from dual
)

--或者
insert into sun1(col1, col2 )
(
select 'aa', 'bb' from dual
union all
select 'aa', 'bb' from dual
)


---------------------------------删除数据---------------------------------------------
--删除表中的所有数据
delete from sun1
--或者
truncate table sun1


--删除表中重复的行
delete from sun1
where rowid not in
(
select max( s.rowid )
from sun1 s
group by col1,col2
)

---------------------------------更新数据---------------------------------------------
--从一表中取多列数据来更新另一表中的多列数据
update table1 a
set (a.col3, a.col4) = ( select b.col3, b.col4
   from table2 b
   where b.col1 = a.col1
   and b.col2 = a.col2
)

---------------------------------删除表-------------------------------------------------

--删除一表
drop table sun2


---------------------------------权限管理-------------------------------------------------
--系统权限
--给用户授权CONNECT(基本的连接)
grant connect to username

--给用户授权RESOURCE(程序开发)
grant resource to username

--给用户授权DBA(数据库管理)
grant dba to username

--给用户授权
grant connect, resource to username

--数据对象权限
GRANT SELECT ON sun1 TO username;

GRANT SELECT, INSERT, DELETE ON sun2 TO user1, user2


--REVOKE 回收权限

REVOKE CONNECT, RESOURCE FROM 用户名;

REVOKE SELECT ON 表名 FROM 用户名;

REVOKE SELECT, INSERT, DELETE ON 表名 FROM 用户名1, 用户名2;


---------------------------表空间等管理-------------------------
--创建一表空间

CREATE TABLESPACE 自定义的模块名a
DATAFILE 'd:\database\ora\projet_info\d01.ora' SIZE 2M REUSE
DEFAULT STORAGE ( INITIAL 50K NEXT 50K
PCTINCREASE 0
MAXEXTENTS UNLIMITED
)
ONLINE;
分享到:
评论

相关推荐

    ORACLE常用SQL语句大全.pdf

    Oracle 常用 SQL 语句大全 本文档总结了 Oracle 中常用的 SQL 语句,包括数据库的创建、删除、备份、表的创建、删除、修改、索引的创建、视图的创建等基本操作,以及一些高级查询运算符的使用。 一、数据库操作 ...

    50个常用SQL语句.zip

    50个常用SQL语句.zip50个常用SQL语句.zip50个常用SQL语句.zip50个常用SQL语句.zip50个常用SQL语句.zip50个常用SQL语句.zip50个常用SQL语句.zip50个常用SQL语句.zip50个常用SQL语句.zip50个常用SQL语句.zip50个常用...

    oracle常用SQL语句(汇总版).docx

    Oracle 常用 SQL 语句汇总 Oracle 是一个功能强大且复杂的关系数据库管理系统,它提供了多种 SQL 语句来管理和操作数据库。在本文中,我们将详细介绍 Oracle 中常用的 SQL 语句,包括数据控制语句(DML)、数据定义...

    Mysql常用SQL语句

    MySQL常用SQL语句 MySQL是一种关系型数据库管理系统,使用SQL(Structured Query Language)语言来管理和操作数据库。下面是MySQL中一些常用的SQL语句: 创建、删除和基本查询 * 显示数据库:`show databases;` *...

    EXCEL 常用SQL语句解释+VBA 完全手册

    学习"EXCEL 常用SQL语句解释+VBA 完全手册"的内容,不仅可以提升你在Excel中的数据处理能力,还能够使你在面对复杂数据挑战时游刃有余。无论你是数据分析师、项目经理还是企业决策者,掌握这些技能都将大大提高你的...

    oracle常用sql语句大全 注释完整 放心使用

    本资料集包含了Oracle数据库中常用SQL语句的大全,注释完整,非常适合初学者和有经验的开发者参考使用。 1. **数据查询(SELECT语句)**: - `SELECT * FROM table_name;`:查询表table_name中的所有列。 - `...

    常用 SQL 语句大全+50个常用sql语句总结

    根据给定的文件信息,以下是对“常用 SQL 语句大全+50个常用sql语句总结”的详细解析,涵盖数据操作、数据定义、数据控制、事务控制以及程序化 SQL 等方面的重要知识点。 ### 数据操作 1. **SELECT**:用于从...

    OA系统常用SQL语句

    在OA系统中,SQL语句是核心的数据操作工具,特别是在SQL Server数据库环境下。下面,我们将详细讨论OA系统中常见的SQL语句及其应用。 1. **人事管控**:在OA系统中,人事数据的管理和更新至关重要。例如,"01人事...

    Oracle数据库常用sql语句的分类和常用函数.docx

    根据提供的文档信息,本文将详细解析Oracle数据库中的关键SQL语句分类、常用SQL语句以及Oracle函数的应用场景。此外,还将简要介绍Oracle数据库的一些基本管理命令,如启动与关闭服务、用户管理等。 ### 一、Oracle...

    ACCESS数据库常用SQL语句[参考].pdf

    ACCESS 数据库常用 SQL 语句 SELECT 语句是 Microsoft Jet 数据库引擎中最基本的 SQL 语句,用于从数据库中检索数据。SELECT 语句的基本语法为: SELECT [predicate] { * | table.* | [table.]field1 [AS alias1] ...

    常用SQL语句大全

    常用SQL语句大全 语 句 功 能 --数据操作 SELECT --从数据库表中检索数据行和列 INSERT --向数据库表添加新数据行 DELETE --从数据库表中删除数据行 UPDATE --更新数据库表中的数据 --数据定义 CREATE ...

    fire bird常用sql语句

    fire bird常用sql语句 一、分页写法小例: 二、显示表名和表结构 三、使用ISQL连接数据库 四、更新字段注释 五、显示字段注释 六、更新表注释 七、查询所有的表和视图(包括系统表和系统视图) 八、查询所有的用户表...

    常用sql语句汇总

    这篇文档“常用sql语句汇总”将涵盖多个与SQL相关的主题,包括处理死锁、BCP数据导入导出、动态生成日期维度以及如何断开并更改数据库名称等关键知识点。 首先,我们来探讨死锁。死锁是数据库系统中常见的问题,...

    50个常用sql语句 很好

    50个常用sql语句 50个常用sql语句 50个常用sql语句 50个常用sql语句

    奇迹MU常用SQL语句(非常实用)

    标题“奇迹MU常用SQL语句(非常实用)”和描述中的关键信息暗示了这是一个与《奇迹MU》游戏服务器管理和维护相关的资源包,其中包含了多种SQL语句和与游戏相关的数据库配置文件。《奇迹MU》是一款经典的多人在线角色...

    常用SQL语句大全(简单实用)

    根据提供的文件信息,本文将对其中提及的SQL知识点进行详细解释与说明,旨在为不同层次的学习者提供一个全面且易于理解的SQL语句指南。 ### 1. SELECT 语句 `SELECT` 语句是SQL中最常用的命令之一,主要用于从...

    SQL_SERVER常用sql语句集锦

    ### SQL Server 常用SQL语句集锦详解 #### 一、数据库操作 1. **创建数据库** `CREATE DATABASE database-name;` 此语句用于创建一个新的数据库,`database-name`应替换为希望创建的数据库名称。 2. **删除...

    常用SQL 语句(SQL2000).rar

    这个压缩包"常用SQL语句(SQL2000).rar"很可能是包含了与SQL Server 2000相关的常见查询和操作示例,帮助用户理解和掌握SQL的基础知识。 SQL Server 2000是微软公司推出的一款商业级数据库管理系统,它提供了强大的...

    基础常用SQL语句.pdf

    基础常用SQL语句 本文档总结了基础常用的SQL语句,涵盖了MYSQL基础语句、数据库创建、数据表创建、数据插入、查询、更新、删除、子句、连接、NULL值处理、正则表达式、ALTER命令、服务器元数据、MYSQL及SQL注入、...

Global site tag (gtag.js) - Google Analytics