MySQL中判斷表是否存在:
1. SHOW TABLES LIKE '%tb_bp_d_case%';
2. select `TABLE_NAME` from `INFORMATION_SCHEMA`.`TABLES` where `TABLE_SCHEMA`='dbname' and `TABLE_NAME`='tablename' ;
3. 如果表不存在就建立這個表,那么可以直接用 create table if not exists tablename 這樣的指令來建立,不需要先去查詢表是否存在。
4. 從模板表創建表:create table if not exists like old_table_name;
文章出處:DIY部落(http://www.diybl.com/course/7_databases/mysql/Mysqljs/20090313/161045.html)
posted @
2010-01-08 20:22 SINOJAVA 閱讀(2147) |
評論 (0) |
編輯 收藏
???從網上看到了招聘會的消息:12月2日北京地區2007屆電子信息類高校畢業生與用人單位雙選會地點:海淀展覽館,我的心里很是高興,因為自己沒有選擇繼續考研,想早些找到工作,心里有些著急,希望在這次專門針對應屆生的招聘會上自己能夠找到一份合適的工作.雖然自己的學校比不上北京的那些高校有名氣,但我相信自己還是比較有能力的,決定去投一投簡歷.
??
提前上網查了一下北京到廊坊的火車(雖然路途近坐汽車費用相對還是要高一些),于是決定坐火車過去.要想在早晨8點以前趕到北京只有兩趟火車2550(04:05--05:02)次和2598次(03:44--06:08),2598是趟慢車,考慮到萬一周末車多堵車就決定坐2550過去,凌晨3點手機的鬧鈴響了,雖然只睡了三個小時(宿舍晚上23:00熄燈,我們宿舍有個不好的習慣就是熄燈以后一個小時之內還要聊一會兒,還好大家考慮到我第二天要去北京熄燈后就早早休息了),但找工作比一切都重要,大腦立刻就清醒了.叫上了隔壁宿舍的一個同學,我倆騎自行車就奔向了火車站.
??
也許這一階段天氣比較冷,也許凌晨那一會比較冷,雖然自己穿了厚毛衣和羽絨服,但一出宿舍樓門寒氣還是一股股的刺入了自己的身體,一路上騎車還好,身體感到很熱乎,不覺得到了火車站時間已經04:40了,急忙上了火車,踏上了去北京的求職之路.
??
出了北京站已經五點十分左右了,由于提前找好了到海淀展覽館的乘車路線(坐地鐵2號線到西直門再換乘13號線到知春路下,再倒725公交車倒芙蓉里下),我倆直奔地鐵站坐上了到西直門方向的列車,換乘了13號線中間只經過一站(大鐘市)就到了知春路,我倆從地鐵站里走出去,當時是六點十多分左右,外邊還是茫茫的夜色,路燈照耀下的馬路折射出冰冷的寒氣.找個人問問725的站牌在哪兒吧,但周圍沒有一個行人,我倆只能返回地鐵站又問了一下賣票的阿姨.順著馬路一直往前(西)估計有二里地就到了,哪兒有往那個方向的站牌,阿姨熱情的告訴了我們.我倆一路小跑趕向站牌.雖然是跑著,但還是感覺自己的腳已經冰涼冰涼的了.還好我是和另外一個同學過去的,還有個說話的,沒感覺多長時間就到那個站牌了.
???
到是到了,但一輛輛過去的都是944,是不是看錯地圖了?我從包里又一次拿出地圖看了個究竟,確定沒有錯,可能是725這趟公交車比較少吧,我們等吧,我倆都互相安慰著對方.同學問我冷嗎,我說不冷,為了找工作凍掉耳朵也值得,我開玩笑的回應道.雖然這么說,但身上已經開始哆嗦了,腳被凍的不由得感覺有些僵了,畢竟已經是陽歷12月2號,天氣冷了.認了!挨凍值得,再冷也要堅持下去,這點苦算的了什么!自己不斷的鼓勵著自己.
??
到了海淀展覽館已經是早上7點鐘了,此時天氣已經大亮,明媚的陽光驅散著整個大地的寒冷,給人一種蓬勃向上的氛圍.到了會場的人不多,心里很是高興,心想著今天可以早早入場,不用到最后了擠的個人仰馬翻.于是趕緊排隊去買票,但是買票的小亭子里沒有一個人.8點開始,這才意識到不提前賣票.怎么辦?排隊等!當時我們應該是比較早去的,賣票窗口處只有10來個人,而且我排到了,前邊的第三個.我不斷的使勁跺著腳,因為冷啊,不得不靠運動來獲得一些熱量,穿的那雙皮鞋明顯已經不能抵御這個時候的寒冷.搓著手、跺著腳,堅持了一刻又一刻.
??
快到7:30時,展廳的入口處已經排了好些人了,明顯北京高校的學生已經提前有了票,他們可以提前入場了.急啊!怎么不提前賣票啊!自己的心里抱怨著,看到售票廳里的那幾個工作人員(女同志)拿著票擺來擺去的,自己的心里有些感覺更冷了,等!不能怨他們,他們也是安指示辦事,沒辦法一直挨凍等到了8點鐘,買了票后趕快奔向展廳入口繼續排隊.
??
此時兩列的隊伍已經排的很長很長了,我和同學過去按順序排在了隊伍中.看到有些人乘維持秩序人員不注意幾步跑到了隊伍的前面插隊去了,我的心里不自覺的感慨到:怎么我們大學生了素質還這樣!如果我要是招聘單位,這些人我肯定不要!
?
通過安檢進入了會場,此時已經全然忘了寒冷,滿腦子都是招聘單位招聘單位.首先向自己提前看好的幾家單位投了簡歷(其中間很認真的向他們介紹了自己,也很認真的回答了回答了他們的提問),然后從開始的展位向最后的展位一個個的查看適合的工作,并向符合自己求職的單位投一下簡歷.
?
我們不要本科的!請你拿回你的簡歷吧,哦,我抬頭一看,招聘攤位貼出的崗位信息之后有人用水筆又附加了(碩士以上)的條件,還帶了括號.自己心里清楚了,一切浸在不言中!
?
投完簡歷一看表已經下午1點了,趕緊去趕車回學校.雖然大腦在展廳中很是清醒,但到了地鐵上還是差點給睡著了.到了北京站已經下午2:30了,買了最便宜的一趟車4401(16:22發車,票價5.50).此時最困擾自己的一件事就是餓啊,但是到周圍的食品店一問,一桶面賣5塊,沒天理了!我們這些窮學生怎么承受的起!到學校再吃飯吧,自己安慰和鼓勵著自己.畢竟自己的腰包不太足了,也不好意思再和家里要錢,忍一下吧,這點苦算不了什么!
?
到了等車的站牌時,哪兒已經聚集了一些我們學校的幾個同學(我那個同學也已經去了車站在哪兒等我),我們幾個一起講述了一下自己的所遇到的情況,時間不覺的到了5:30,火車快到廊坊了,一路上我沒有提及吃飯的問題,也不知他們吃過飯沒有,或許他們和自己一樣一直在餓著肚子.但此時自己已經感覺不怎么餓了,或許是餓的已經過勁了吧!
?
拖著疲憊不堪的身體,騎著沉重的自行車終于回到了學校.食堂已經關門了,從旁邊買了一塊錢饅頭(4個),兩袋方便面回宿舍準備飽餐一頓.還沒等面泡好,兩個饅頭一口氣已經下肚了...不知怎么自己吃完了那些東西(還剩一個饅頭,實在吃不了了),脫下羽絨服往床上一趟,心里感覺好舒服....
?
總結:找工作的過程是辛苦的,中間的辛苦也是對自己意志的一種磨練,能找到一份適合自己的工作,無論吃再大的苦也是值得的.
?
?
就寫到這了,對于目前的自己,學好自己的技術是找好工作前提的前提!!
posted @
2006-12-17 09:27 SINOJAVA 閱讀(255) |
評論 (0) |
編輯 收藏
?
[
原創
]
JDBC
如何連接
SQL SERVER 2000
的默認實例和命名實例
?
引用請注明出處
:http//www.tkk7.com/SINOJAVA
?
(
一
)
下載
Microsoft SQL Server 2000 Service Pack 3a
并安裝
http://www.microsoft.com/downloads/details.aspx?FamilyId=90DCD52C-0488-4E46-AFBF-ACACE5369FA3&displaylang=zh-cn
?
(
二
)
下載并安裝
SQL SERVER 2000
得
JDBC
驅動
(
SQL Server 2000 Driver for JDBC Service Pack 3
)
http://www.microsoft.com/downloads/details.aspx?FamilyId=07287B11-0502-461A-B138-2AA54BFDC03A&displaylang=en
?
(
三
)
配置
JDBC
驅動
classpath
環境變量
:
方法
1:
?
填加
:
C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\msbase.jar;
C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\mssqlserver.jar;
C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\msutil.jar;
?
注
: C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\
為我
JDBC
得安裝路徑
?
方法
2:
?
將
mssqlserver.jar; msutil.jar; msbase.jar
拷貝到
JDK
得
lib
目錄下
,
然后設置
classpath
?
D:\Java\jdk1.5.0_05\lib\sqlserver\msutil.jar;
D:\Java\jdk1.5.0_05\lib\sqlserver\msbase.jar;
D:\Java\jdk1.5.0_05\lib\sqlserver\mssqlserver.jar;
?
(
四
)
創建連接數據庫默認實例得連接代碼
:
?
import java.sql.*;
public class ConSqlserver {
????
???? Connection con=null;
???? //Statement st=null;
???? //ResultSet re=null;
????
???? public ConSqlserver()
???? {
??????????? try
??????????? {
???????????
??? String driver="com.microsoft.jdbc.sqlserver.SqlServerDriver";
???????????
??? String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=Northwind";
???????????
??? Class.forName(driver).newInstance();
???????????
??? con =DriverManager.getConnection(url,"sa","zhaopf");
???????????
??? System.out.println("
連接成功
!");
???????????
??? con.close();
???????????
??????????? }
??????????? catch(Exception e)
??????????? {
?????????????????? e.printStackTrace();
??????????? }
???????????
???????????
???? }
?
?????? public static void main(String[] args)
???? {
??????????? // TODO
自動生成方法存根
??????????? ConSqlserver con=new ConSqlserver();
???????????
?
???? }
?
}
?
(
五
)
創建連接數據庫命名實例的連接代碼
(
實例名為
SINOIT\SINOSERVER)
L
?
import java.sql.*;
public class ConSqlserverppp {
????
???? Connection con=null;
???? //Statement st=null;
???? //ResultSet re=null;
????
???? public ConSqlserverppp()
???? {
??????????? try
??????????? {
???????????
??? //String driver="com.microsoft.jdbc.sqlserver.SqlServerDriver";
????
??????
??? String url="jdbc:microsoft:sqlserver://SINOIT\\SINOSERVER;DatabaseName=Northwind";
???????????
???
???????????
??? Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
??????????????????
???????????
??? //Class.forName(driver);//.newInstance();
???????????
??? con =DriverManager.getConnection(url,"sa","zse");
???????????
??? //st=con.createStatement();
???????????
??? System.out.println("
連接成功
!");
???????????
??? con.close();
???????????
??????????? }
??????????? catch(Exception e)
??????????? {
?????????????????? e.printStackTrace();
??????????? }
???????????
???????????
???? }
?
???? public static void main(String[] args)
???? {
???????????
??????????? ConSqlserverppp con=new ConSqlserverppp();
???? }
?
}
posted @
2006-04-10 07:24 SINOJAVA 閱讀(2652) |
評論 (1) |
編輯 收藏

我的blog開業了,歡迎大家前來支持,謝謝!!
posted @
2006-04-08 07:58 SINOJAVA 閱讀(651) |
評論 (2) |
編輯 收藏
?JAVA與數據庫連接方法(一)
?
?
用JAVA連接數據庫主要有兩種方式,一是用JDBC-ODBC橋來連接,二是用相關廠商提供的相應驅動程序來連接,首先談談第一種連接。
JDBC-ODBC橋接器是用JdbcOdbc.Class和一個用于訪問ODBC驅動程序的本地庫實現的。對于WINDOWS平臺,該本地庫是一個動態連接庫DLL
(JDBCODBC.DLL)。
由于JDBC在設計上與ODBC很接近。在內部,這個驅動程序把JDBC的方法映射到ODBC調用上,這樣,JDBC就可以和任何可用的ODBC驅動程序進行
交互了。這種橋接器的優點是,它使JDBC目前有能力訪問幾乎所有的數據庫。通行方式如圖所示:
應用程序---JDBC API---JDBC-ODBC---ODBC API---ODBC層---數據源
具體操作方法為:
首先打開控制面板的管理工具,打開數據源(ODBC),在用戶DSN里面添加數據源(即你要連接的數據庫的名字),在這里假定連接SQL SERVER
2000的GoodsSupply數據庫。名稱填寫你要連接的數據庫的名稱(GoodsSupply),然后逐步設置,如果選用了使用SQL-SERVER密碼認證的話,
就要輸入相應的用戶名及密碼連接到數據庫。一路下一步設置完成。
在JAVA里面編寫程序進行測試,在這里我的程序是讓用戶輸入任意的表名與與列名,把該列的所有數據輸出。源代碼如下:
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.sql.*;
public class ODBCBridge {
public static void main(String[] args) {
String url="jdbc:odbc:GoodsSupply";
Statement sm=null;
String command=null;
ResultSet rs=null;
String tableName=null;
String cName=null;
String result=null;
BufferedReader input=new BufferedReader(new InputStreamReader(System.in));
try {
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //加載驅動
}catch(ClassNotFoundException e){
System.out.println("Can not load Jdbc-Odbc Bridge Driver");
System.err.print("ClassNotFoundException:");
System.err.println(e.getMessage());
}
Connection con=DriverManager.getConnection(url,"USER","PASSWORD"); //使用SQL-SERVER2000認證
DatabaseMetaData dmd=con.getMetaData(); //DMD為連接的相應情況
System.out.println("連接的數據庫:"+dmd.getURL());
System.out.println("驅動程序:"+dmd.getDriverName());
sm=con.createStatement();
System.out.println("輸入表名");
tableName=input.readLine();
while(true) {
System.out.println("輸入列名(為空時程序結束):");
cName=input.readLine();
if(cName.equalsIgnoreCase(""))
break;
command="select "+cName+" from "+tableName;
rs=sm.executeQuery(command); //執行查詢
if(!rs.next())
System.out.println("表名或列名輸入有誤");
else {
System.out.println("查詢結果為:");
do
{
result=rs.getString(cName);
//數據庫語言設置為中文,不用轉換編碼
//result=new String(result.getBytes("ISO-8859-1"),"GB2312");
System.out.println(result);
}while(rs.next());
}
}
}catch(SQLException ex) {
System.out.println("SQLException:");
while(ex!=null) {
System.out.println("Message:"+ex.getMessage());
ex=ex.getNextException();
}
}catch(Exception e) {
System.out.println("IOException");
}
}
}?
JAVA與數據庫連接方法(二)
現在介紹第二種方法,用關廠商提供的相應驅動程序來連接。
這種實現方法是直接使用數據庫廠商提供的用專用的網絡協議創建的驅動程序,通過它可以直接將JDBC API調用轉換為直接網絡調用。這種調
用方式一般性能比較好,而且也是實用中最簡單的方法。因為它步需要安裝其他的庫或中間件。幾乎所有的數據庫廠商都為他們的數據庫提供
了這種數據庫提供了這種JDBC驅動程序,也可以從第三方廠商獲得這些驅動程序。
從網址http://industry.Java.sun.com/products/jdbc/drivers/可以看到所有有用的驅動程序的清單。其結果如圖所示:
應用程序---JDBC API---驅動程序---數據源
這里首先要安裝JDBC的驅動程序,推薦SP2版本的,可從微軟網站上下載
http://www.microsoft.com/downloads/details.aspx?FamilyID=9f1874b6-f8e1-4bd6-947c-0fc5bf05bf71&DisplayLang=en 下載最下面的
SETUP.EXE
這個驅動程序要配合SQL SERVER2000 SP3A,相應下載URL為
http://www.microsoft.com/china/sql/downloads/sp3.asp 下載 chs_sql2ksp3.exe
如果用JAVA SDK直接編譯運行的話需要設置環境變量,將安裝好的JDBC驅動里面的LIB三個文件設置為環境變量:
classpath:
D:\program files\Microsoft SQL Server\jdbc\lib\msbase.jar;
D:\program files\Microsoft SQL Server\jdbc\lib\mssqlserver.jar;
D:\program files\Microsoft SQL Server\jdbc\lib\msutil.jar;
安裝即可用微軟的驅動程序連接數據庫了,相應代碼與前面基本相同:
import java.sql.*;
import java.io.*;
public class DBColumn {
public static void main(String[] args) {
Connection con=null;
Statement sm=null;
String command=null;
ResultSet rs=null;
String tableName=null;
String cName=null;
String result=null;
BufferedReader input=new BufferedReader(new InputStreamReader(System.in));
try
{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
System.out.println("驅動程序已加載");
//SQL SERVER的登陸方式必須為使用SQL SERVER密碼登陸認證方式
con=DriverManager.getConnection("jdbc:microsoft:sqlserver://SERVERNAME:1433","USER","PASSWORD");
con.setCatalog("GoodsSupply");
System.out.println("OK,成功連接到數據庫");
}catch(Exception ex) {
ex.printStackTrace();
}
try
{
sm=con.createStatement();
System.out.println("輸入表名");
tableName=input.readLine();
while(true) {
System.out.println("輸入列名(為空時程序結束):");
cName=input.readLine();
if(cName.equalsIgnoreCase(""))
break;
command="select "+cName+" from "+tableName;
rs=sm.executeQuery(command);
if(!rs.next())
System.out.println("表名或列名輸入有誤");
else {
System.out.println("查詢結果為:");
do
{
result=rs.getString(cName);
//result=new String(result.getBytes("ISO-8859-1"),"GB2312");
System.out.println(result);
}while(rs.next());
}
}
}catch(Exception ex) {
ex.printStackTrace();
}
}
}
?
?????????????????????????????????????????????????????????????????JAVA與數據庫連接方法(三)
最后給出JAVA連接其他數據庫的關鍵代碼:
1、Oracle8/8i/9i數據庫(thin模式)???
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();???
String? url="jdbc:oracle:thin:@localhost:1521:orcl";???
//orcl為數據庫的SID???
String? user="test";???
String? password="test";???
Connection? conn=? DriverManager.getConnection(url,user,password);???
?
2、DB2數據庫???
Class.forName("com.ibm.db2.jdbc.app.DB2Driver? ").newInstance();???
String? url="jdbc:db2://localhost:5000/sample";???
//sample為你的數據庫名???
String? user="admin";???
String? password="";???
Connection? conn=DriverManager.getConnection(url,user,password);????
?
3、Sybase數據庫???
Class.forName("com.sybase.jdbc.SybDriver").newInstance();???
String? url? ="? jdbc:sybase:Tds:localhost:5007/myDB";???
//myDB為你的數據庫名???
Properties? sysProps? =? System.getProperties();???
SysProps.put("user","userid");???
SysProps.put("password","user_password");???
Connection? conn=? DriverManager.getConnection(url,? SysProps);???
?
4、Informix數據庫???
Class.forName("com.informix.jdbc.IfxDriver").newInstance();???
String? url? =???
"jdbc:informix-sqli://123.45.67.89:1533/myDB:INFORMIXSERVER=myserver;???
user=testuser;password=testpassword";???
//myDB為數據庫名???
Connection? conn=? DriverManager.getConnection(url);???
?
5、MySQL數據庫???
Class.forName("org.gjt.mm.mysql.Driver").newInstance();???
String? url? ="jdbc:mysql://localhost/myDB?user=soft&password=soft1234&useUnicode=?
true&characterEncoding=8859_1"???
//myDB為數據庫名???
Connection? conn=? DriverManager.getConnection(url);???
?
6、PostgreSQL數據庫???
Class.forName("org.postgresql.Driver").newInstance();???
String? url? ="jdbc:postgresql://localhost/myDB"???
//myDB為數據庫名???
String? user="myuser";???
String? password="mypassword";???
Connection? conn=? DriverManager.getConnection(url,user,password);
posted @
2006-04-08 07:46 SINOJAVA 閱讀(1171) |
評論 (0) |
編輯 收藏