java 銜接sql server2008數據庫設置裝備擺設。本站提示廣大學習愛好者:(java 銜接sql server2008數據庫設置裝備擺設)文章只能為提供參考,不一定能成為您想要的結果。以下是java 銜接sql server2008數據庫設置裝備擺設正文
1,主鍵的刪除
ALTER TABLE TABLENAME DROP PRIMARY_KEY 履行下面的SQL可以刪除主鍵;假如不勝利可以用 ALTER TABLE TABLENAME DROP CONSTRAINTS COLUMN CASCADE; --刪除束縛 ALTER TABLE TABLENAME DISABLE PRIMARY_COLUMN ; --設置被設置為主鍵的列為有效 DROP INDEX INDEX_NAME; --刪除主鍵索引
2,檢查主鍵束縛
SELECT * FROM USER_CONSTRAINTS WHERE CONSTRAINT_TYPE='P' AND TABLE_NAME='你要檢查的表名' AND OWNER=USER
3,創立結合主鍵
ALTER TABLE ADD CONSTRAINTS '束縛名' PRIMARY KEY (COLUMN,COLUMN,...);值可有可無的情形下,可使用 NVL( ) 來移去盤算或操作中的 null 值。
select nvl(a.name,'空得') as name from student a joinschool b on a.ID=b.ID
留意:兩個參數得類型要婚配
問:甚麼是NULL?
答:在我們不曉得詳細有甚麼數據的時刻,也即未知,可以用NULL,
我們稱它為空,ORACLE中,含有空值的表列長度為零。
ORACLE許可任何一種數據類型的字段為空,除以下兩種情形:
1、主鍵字段(primary key),
2、界說時曾經加了NOT NULL限制前提的字段
解釋:
1、等價於沒有任何值、是未知數。
2、NULL與0、空字符串、空格都分歧。
3、對空值做加、減、乘、除等運算操作,成果仍為空。
4、NULL的處置應用NVL函數。
5、比擬時應用症結字用“is null”和“is not null”。
6、空值不克不及被索引,所以查詢時有些相符前提的數據能夠查不出來,
count(*)中,用nvl(列名,0)處置後再查。
7、排序時比其他數據都年夜(索引默許是降序分列,小→年夜),
所以NULL值老是排在最初。
將以上代碼保留成 slimit 文件,扔在項目中的某個包目次下便可,再修正 settings:
PIPELINE_JS_COMPRESSOR = 'lib.slimit.SlimItCompiler'
UnicodeDecodeError: 'ascii' codec can't decode byte 成績
啟用 django-pipeline 後,履行 manage.py collectstatic 假如碰著上面的毛病提醒:
File ".../ENV/local/lib/python2.7/site-packages/django/contrib/staticfiles/storage.py", line 226, in post_process
content = pattern.sub(converter, content)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xef in position 0: ordinal not in range(128)
八成是由於 CSS 文件中含有中文或其它非拉丁文字。我在應用 @font-face 圖標文字時碰著了這個成績,這是 django staticfiles 包的一個 bug,處理辦法是修正 /django/contrib/staticfiles/storage.py 文件,把失足的那行代碼:
content = original_file.read()
調換成:
content = original_file.read().decode('utf-8')
用這個辦法的條件是:你的 CSS 文件必需包管 utf-8 編碼,不然仍然會失足。
PS,給 Django 項目提交了一個 bug 申報:https://code.djangoproject.com/ticket/18430
留意個中要引入jar包sqljdbc 2.0
JAVA銜接SQL2008 - 光陰似箭 - 夢裡花落知若干
如今進入正題

啟動MyEclipse 8.5——創立JAVA項目——記住導入sqljdbc4.jar
代碼以下
我們用SQL驗證的sa登錄(條件要翻開混雜形式登錄這裡不在贅述)
import java.sql.*;
public class javaConSQL
{
public static void main(String[] args)
{
String JDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver";//SQL數據庫引擎
String connectDB="jdbc:sqlserver://...:;DatabaseName=Mydb";//數據源
try
{
Class.forName(JDriver);//加載數據庫引擎,前往給定字符串名的類
}catch(ClassNotFoundException e)
{
//e.printStackTrace();
System.out.println("加載數據庫引擎掉敗");
System.exit();
}
System.out.println("數據庫驅動勝利");
try
{
String user="sa";
String password="sql";
Connection con=DriverManager.getConnection(connectDB,user,password);//銜接數據庫對象
System.out.println("銜接數據庫勝利");
Statement stmt=con.createStatement();//創立SQL敕令對象
//創立表
System.out.println("開端創立表");
String query="create table TABLE(ID NCHAR(),NAME NCHAR())";//創立表SQL語句
stmt.executeUpdate(query);//履行SQL敕令對象
System.out.println("表創立勝利");
//輸出數據
System.out.println("開端拔出數據");
String a="INSERT INTO TABLE VALUES('','旭哥')";//拔出數據SQL語句
String a="INSERT INTO TABLE VALUES('','偉哥')";
String a="INSERT INTO TABLE VALUES('','張哥')";
stmt.executeUpdate(a);//履行SQL敕令對象
stmt.executeUpdate(a);
stmt.executeUpdate(a);
System.out.println("拔出數據勝利");
//讀取數據
System.out.println("開端讀取數據");
ResultSet rs=stmt.executeQuery("SELECT * FROM TABLE");//前往SQL語句查詢成果集(聚集)
//輪回輸入每筆記錄
while(rs.next())
{
//輸入每一個字段
System.out.println(rs.getString("ID")+"\t"+rs.getString("NAME"));
}
System.out.println("讀取終了");
//封閉銜接
stmt.close();//封閉敕令對象銜接
con.close();//封閉數據庫銜接
}
catch(SQLException e)
{
e.printStackTrace();
//System.out.println("數據庫銜接毛病");
System.exit();
}
}
}
MyEclipse8.5 運轉成果:

翻開SQL2008企業治理器
履行SQL語句
USE Mydb GO SELECT * FROM TABLE1
成果為:

解釋曾經勝利銜接SQL,並在數據庫Mydb創立表TABLE1
感謝!有哪裡不准確的處所,去哪一個讀者指出,相互進修