這個方法我一般不告訴別人,這是微軟最新的BUG,當(dāng)你代碼全部都打好以后,先全選,然后刪除所有代碼(這之前不能復(fù)制,復(fù)制了就不起作用了),然后按ctrl+z撤銷操作,這個時候你的代碼還是在你的窗口里;然后現(xiàn)在關(guān)閉SSMS,這時SSMS會提示你要不要保存,選擇不保存,然后完全關(guān)閉SSMS再重新打開你的SSMS,這個時候再按一次撤銷,SQLSERVER會自動對齊你剛剛敲的代碼。
成都創(chuàng)新互聯(lián)成都網(wǎng)站建設(shè)定制網(wǎng)站制作,是成都網(wǎng)站制作公司,為成都假山制作提供網(wǎng)站建設(shè)服務(wù),有成熟的網(wǎng)站定制合作流程,提供網(wǎng)站定制設(shè)計服務(wù):原型圖制作、網(wǎng)站創(chuàng)意設(shè)計、前端HTML5制作、后臺程序開發(fā)等。成都網(wǎng)站維護(hù)熱線:13518219792
這個方法尤其是在你懶得對齊自己代碼的時候非常有效,不管你敲了多久的代碼,都可以自動縮進(jìn)得非常漂亮,但是如果是亂打的字就沒辦法了,它會認(rèn)為那是字符串,不會有任何改變。
首先,帶n的和不帶n的,只是輸入字符的全角和半角占字符的問題。
char(10)是固定10個字符位子,比如你輸入2個字符,它返回的還是10個字符,多余的8個字符用空格代替了。
varchar(10)是自動縮進(jìn),比如你輸入2個字符,它返回的就是兩個字符
private void DataGrid1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
//DataGrid1控件的分頁事件處理程序
{
DataGrid1.CurrentPageIndex=e.NewPageIndex; //DataGrid1的當(dāng)前頁設(shè)置為新的頁
DataBind(); //重新綁定WebData控件的數(shù)據(jù)
}
private void DataGrid1_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
//DataGrid1控件的DeleteCommand(刪除命令)事件處理程序
{
if(DataGrid1.Items.Count==1) // 如果DataGrid1當(dāng)前只有一行數(shù)據(jù)
{
if(DataGrid1.CurrentPageIndex!=0) // 而且當(dāng)前分頁不是第一頁
{
DataGrid1.CurrentPageIndex=DataGrid1.CurrentPageIndex-1; // 則分頁到上一頁
}
}
else // 否則
{
string SqlStr2="delete [beifen] where id="+e.Item.Cells[0].Text+""; // SqlStr2定義成一條SQL語句:刪除beifen這個表中id=DataGrid1的第一列中文本的記錄
string SqlConn=System.Configuration.ConfigurationSettings.AppSettings["ConnString"]; // 從Web.config中讀取數(shù)據(jù)庫連接字符串
SqlConnection Conn=new SqlConnection(SqlConn); // 新建連接字符串為SqlConn的sqlserver連接對象
Conn.Open(); // 打開連接
SqlCommand Comm=new SqlCommand(SqlStr2,Conn); // 新建SQL語句為SqlStr2,連接為Conn的SQL命令對象
Comm.ExecuteReader(); // 執(zhí)行SQL語句
Conn.Close();} // 關(guān)閉數(shù)據(jù)庫連接
Response.Redirect("car_jilu.aspx"); // 讓客戶端網(wǎng)頁轉(zhuǎn)到car_jilu.aspx
}
private void DataGrid1_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
// DataGrid1控件的ItemCreated(創(chuàng)建項)事件處理程序(DataGrid1在生成新行時引發(fā))
{
if(e.Item.ItemType==ListItemType.Item||e.Item.ItemType==ListItemType.AlternatingItem||e.Item.ItemType==ListItemType.EditItem) // 如果項的類型是普通項、交替項、處于編輯模式的項
{
TableCell myTableCell;
myTableCell=e.Item.Cells[16]; // myTableCell被賦值為DataGrid1第17列的單元格
LinkButton btnDel=(LinkButton)myTableCell.Controls[0]; // btnDel被賦值為這個單元格的第一個控件,它是一個LinkButton(鏈接按鈕)
btnDel.Attributes.Add("onclick","return confirm('您確定要刪除這條車輛記錄嗎?');"); // 這個按鈕的客戶端腳本的onclick事件為彈出一MessageBox,顯示'您確定要刪除這條車輛記錄嗎?',用戶點“確定”返回true,點“取消”返回false,目的是防止意外的刪除數(shù)據(jù)庫記錄
btnDel.Text="刪除"; //這個按鈕的文本為“刪除”字樣
// 這段程序的目的是在DataGrid1的創(chuàng)建過程中,在第17列動態(tài)地定義個安全的刪除按鈕
}
}
執(zhí)行單條SQL語句:按F8鍵
別的功能,如果你想配快捷鍵:
設(shè)置快捷鍵(設(shè)置方法:菜單-》Tools(工具)–Preferences(首選項)–用戶界面–鍵配置),以下是默認(rèn)的一些:
新建sql窗口:ctrl+shift+s
新建命令窗口:ctrl+shift+c
新建測試窗口:ctrl+shift+t
PL/SQL Developer美化器:ctrl+shift+f
重做:ctrl+shift+z
撤銷:ctrl+z
清除:ctrl+d(慎用,不可恢復(fù),俺是禁用哦O(∩_∩)O~)
選中所有:ctrl+a
縮進(jìn):tab
取消縮進(jìn):shift+tab
大寫:ctrl+shift+x
小寫:ctrl+shift+y
注釋:ctrl+h
取消注釋:ctrl+m
查找:ctrl+f
顯示表結(jié)構(gòu):ctrl+鼠標(biāo)懸停在表名上
模板列表:shift+alt+r
窗口列表:ctrl+w
C# 編碼規(guī)則(標(biāo)準(zhǔn)化越來越近了):namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /
一、命名
1.用pascal規(guī)則來命名方法和類型.
public class TextBox
{
public void DataBind()
{
}
}
2.用camel規(guī)則來命名局部變量和方法的參數(shù).
string userName;
public AddUser(string userId, byte[] password);
3.所有的成員變量前加前綴 _
public class Database
{
private string _connectionString;
}
4.接口的名稱加前綴 I.
interface ICompare
{
int compare();
}
5.自定義的屬性以Attribute結(jié)尾
public class AuthorAttribute : Attribute
{
}
6.自定義的異常以Exception結(jié)尾
public class AppException : Exception
{
}
7.方法的命名.一般將其命名為動賓短語.
ShowDialog()
CreateFile()
GetPath()
8.代碼的縮進(jìn).要用Tab,而不要用space.
9.局部變量的名稱要有意義.不要用x,y,z等等(除用于For循環(huán)變量中可使用i,j,k,l,m,n).
string userName
10.所有的成員變量聲明在類的頂端,用一個換行把它和方法分開.
11.用有意義的名字命名namespace,如:產(chǎn)品名、公司名.
12.建議局部變量在最接近使用它時再聲明.
13.使用某個控件的值時,盡量命名局部變量.
14.把引用的系統(tǒng)的namespace和自定義或第三方的用一個換行把它們分開.
15.文件名要能反應(yīng)類的內(nèi)容,最好是和類同名,一個文件中一個類或一組關(guān)連類.
16.目錄結(jié)構(gòu)中要反應(yīng)出namespace的層次.
17.大括號"{"要新起一行.
public class AuthorAttribute : Attribute
{
}
x = []
y = []
for item in result:
x.append(item[0])
y.append(item[1])
print(x, y)
運行效果
希望對您有所幫助!