整頓MySql經常使用查詢語句(23種)。本站提示廣大學習愛好者:(整頓MySql經常使用查詢語句(23種))文章只能為提供參考,不一定能成為您想要的結果。以下是整頓MySql經常使用查詢語句(23種)正文
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
感謝!有哪裡不准確的處所,去哪一個讀者指出,相互進修