隨筆-20  評論-3  文章-9  trackbacks-0

          (數(shù)據(jù)庫的安裝與配置: 在本人博客里有一篇DB for Ubuntu8文章中) ? ?

          本人使用測試和運行SQL語句的系統(tǒng)是Ubuntu8(Linux)和Solaris10(Unix)

          ?

          一、各種數(shù)據(jù)庫的差別

          數(shù)據(jù)庫名 數(shù)據(jù)庫數(shù)量
          MySQL 多個
          Oracle 一個
          SQL Server 多個
          DB2 多個
          PostgreSQL 多個
          Sybase 多個
          ? ?
          ? ?
          ? ?
          ?

          二、如何進入數(shù)據(jù)庫

          數(shù)據(jù)庫名SQL語句
          MySQL

          mysql -h 127.0.0.1 -u root -p

          password

          Oracle

          1、將所有權限授權給scott
          grant All PRIVILEGES to scott

          2、登錄
          sqlplus
          scott
          password

          PL/SQL登錄

          SQL Server?啟動服務器,然后使用查詢分析器登錄
          DB2先要編目節(jié)點:catalog tcpip node node_id remote ip server port_no
          然后編目數(shù)據(jù)庫:catalog db dbname at node nod_name
          PostgreSQL

          sudo -u postgres psql postgres

          pgadmin3登錄

          Sybase

          netstat ? -na|more???(查Sybase端口)
          telnet ? xxx.xxx.xxx.xxx(網(wǎng)卡地址) ? xxxx(Sybase端口)
          ??

          ??
          ??
          ??

          ?

          三、查看所有數(shù)據(jù)庫

          數(shù)據(jù)庫名SQL語句
          MySQL

          show databases;

          Oracle

          只有一個數(shù)據(jù)庫

          SQL Serverselect name from sysdatabases;
          DB2?
          PostgreSQL?
          Sybase?
          ??
          ??
          ??

          ?

          四、進入數(shù)據(jù)庫

          數(shù)據(jù)庫名SQL語句
          MySQL

          use database_name;

          Oracle

          只有一個數(shù)據(jù)庫

          SQL Serveruse database_name go
          DB2?
          PostgreSQLsudo -u postgres psql db_name;
          Sybaseuse database_name go
          ??
          ??
          ??

          ?

          五、查看數(shù)據(jù)庫的所有表?

          數(shù)據(jù)庫名SQL語句
          MySQL

          show tables;

          Oracle

          select * from tab;

          select table_name from all_tables where owner='dbuser';

          SQL Server?
          DB2?
          PostgreSQL?
          Sybase?
          ??
          ??
          ??

          ?

          六、創(chuàng)建數(shù)據(jù)庫sql_db和兩張表dept、emp

          數(shù)據(jù)庫名SQL語句
          MySQL

          1、mysqladmin -h localhost -u root -p

          2、password

          3、將下面的代碼復制到終端執(zhí)行

          #假如存在sql_db刪除數(shù)據(jù)庫sql_db
          drop database if exists sql_db;

          #創(chuàng)建數(shù)據(jù)庫sql_db
          create database sql_db ;

          #進入sql_db數(shù)據(jù)庫
          use sql_db ;

          #創(chuàng)建數(shù)據(jù)表dept(部門表)
          #deptno(部門編號) dname(部門名稱) loc(部門所在地)
          create table dept
          (
          ? deptno int not null primary key ,
          ? dname varchar(255) not null ,
          ? loc varchar(255) not null
          );
          insert into dept values(10 , 'ACCOUNTING' , 'NEW YORK' ) ;
          insert into dept values(20 , 'RESEARCH' , 'DALLAS') ;
          insert into dept values(30 , 'SALES' , 'CHICAGO') ;
          insert into dept values(40 , 'OPERATIONS' , 'BOSTON') ;

          #創(chuàng)建數(shù)據(jù)庫表emp(員工表)
          #empno(員工編號) ename(員工名) job(職業(yè)) mgr hiredate(入職時間) sal(工資) comm(提成) deptno(部門編號)
          create table emp
          (
          ? empno int not null primary key ,
          ? ename varchar(255) not null ,
          ? job varchar(255) not null ,
          ? mgr int,
          ? hiredte date not null ,?
          ? sal int not null ,
          ? comm int ,
          ? deptno int not null ,
          ? foreign key(deptno) references dept(deptno)
          );

          insert into emp values(7369,'SMITH','CLERK',7902,'1980-12-17',800,null,20);
          insert into emp values(7499,'ALLEN','SALESMAN',7698,'1981-2-20',1600,300,30);
          insert into emp values(7521,'WARD','SALESMAN',7698,'1981-2-22',1250,500,30);
          insert into emp values(7566,'JONES','MANAGER',7839,'1981-4-02',2975,null,20 );
          insert into emp values(7654,'MARTIN','SALESMAN',7698,'1981-9-28',1250,1400,30);
          insert into emp values(7698,'BLAKE','MANAGER',7839,'1981-5-01',2850,null,30);
          insert into emp values(7782,'CLARK', 'MANAGER',7839,'1981-6-09',2450,null,10);
          insert into emp values(7788,'SCOTT','ANALYST',7566,'1987-4-19',3000,null,20);
          insert into emp values(7839,'KING','PRESIDENT',null,'1981-11-17',5000,null,10);
          insert into emp values(7844,'TURNER','SALESMAN',7698,'1981-9-08',1500,0,30);
          insert into emp values(7876,'ADAMS','CLERK',7788,'1987-5-23',1100,null,20);
          insert into emp values(7900,'JAMES','CLERK',7698,'1981-12-03',950,null,30);
          insert into emp values(7902,'FORD','ANALYST',7566,'1981-12-03',3000,null,20);
          insert into emp values(7934,'MILLER','CLERK',7782,'1982-1-23',1300,null,10);

          Oracle

          Oracle本身就有dept和emp兩張表

          SQL Server?
          DB2?
          PostgreSQL

          1、創(chuàng)建數(shù)據(jù)庫并進入數(shù)據(jù)庫
          sudo -u postgres createdb sql_db(mydb為您要建立的數(shù)據(jù)庫名)
          sudo -u postgres psql sql_db(這樣就可以進去該數(shù)據(jù)庫)

          2、按Ctrl+Z退出postgres數(shù)據(jù)庫,并重新登錄數(shù)據(jù)庫sql_db
          sudo -u postgres psql sql_db ;

          3、將下面的代碼復制到終端執(zhí)行

          --刪除數(shù)據(jù)表dept--
          drop table if exists dept ;

          --創(chuàng)建數(shù)據(jù)表dept(部門表)--
          --deptno(部門編號) dname(部門名稱) loc(部門所在地)--
          create table dept
          (
          ? deptno integer not null primary key ,
          ? dname text not null ,
          ? loc text not null
          );
          insert into dept values(10 , 'ACCOUNTING' , 'NEW YORK' ) ;
          insert into dept values(20 , 'RESEARCH' , 'DALLAS') ;
          insert into dept values(30 , 'SALES' , 'CHICAGO') ;
          insert into dept values(40 , 'OPERATIONS' , 'BOSTON') ;

          --創(chuàng)建數(shù)據(jù)庫表emp(員工表)--
          create table emp
          (
          ? empno integer not null primary key ,
          ? ename text not null ,
          ? job text not null ,
          ? mgr integer,
          ? hiredte date not null ,?
          ? sal integer not null ,
          ? comm integer ,
          ? deptno integer not null ,
          ? foreign key(deptno) references dept(deptno)
          );

          insert into emp values(7369,'SMITH','CLERK',7902,'1980-12-17',800,null,20);
          insert into emp values(7499,'ALLEN','SALESMAN',7698,'1981-2-20',1600,300,30);
          insert into emp values(7521,'WARD','SALESMAN',7698,'1981-2-22',1250,500,30);
          insert into emp values(7566,'JONES','MANAGER',7839,'1981-4-02',2975,null,20 );
          insert into emp values(7654,'MARTIN','SALESMAN',7698,'1981-9-28',1250,1400,30);
          insert into emp values(7698,'BLAKE','MANAGER',7839,'1981-5-01',2850,null,30);
          insert into emp values(7782,'CLARK', 'MANAGER',7839,'1981-6-09',2450,null,10);
          insert into emp values(7788,'SCOTT','ANALYST',7566,'1987-4-19',3000,null,20);
          insert into emp values(7839,'KING','PRESIDENT',null,'1981-11-17',5000,null,10);
          insert into emp values(7844,'TURNER','SALESMAN',7698,'1981-9-08',1500,0,30);
          insert into emp values(7876,'ADAMS','CLERK',7788,'1987-5-23',1100,null,20);
          insert into emp values(7900,'JAMES','CLERK',7698,'1981-12-03',950,null,30);
          insert into emp values(7902,'FORD','ANALYST',7566,'1981-12-03',3000,null,20);
          insert into emp values(7934,'MILLER','CLERK',7782,'1982-1-23',1300,null,10);

          posted on 2008-06-04 14:52 藍山 閱讀(1303) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           
          主站蜘蛛池模板: 长兴县| 安宁市| 利辛县| 浠水县| 蓬溪县| 郧西县| 龙井市| 灵寿县| 周宁县| 凉山| 云和县| 都兰县| 镇宁| 库伦旗| 乌兰浩特市| 阳城县| 辉南县| 永安市| 东至县| 河北省| 平泉县| 玛多县| 衡阳市| 濉溪县| 吉林市| 札达县| 温泉县| 宜宾县| 漳平市| 紫阳县| 浦东新区| 乌兰察布市| 玉田县| 垫江县| 张北县| 逊克县| 长寿区| 贵南县| 山东省| 郑州市| 方城县|