㈠ 高通量測序數據公共資料庫有哪些(高通量測序常規)
GenBank資料庫結構
完整的GenBank資料庫包括序列文件,索引文件以及其它有關文件。索引文件是根據資料庫中作者、參考文枝蘆亂獻等建立的,用於資料庫查詢。GenPept是由GenBank中的核酸序列翻譯而得到的蛋白質序列資料庫,其數據格式為FastA。
GenBank中最常用的是序列文件。序列文件的基本單位是序列條目,包括核苷酸鹼基排列順序和注釋兩部分。目前,許多生物信息資源中心通過計算機網路提供該資料庫文件。下面,我們介紹序列文件的結構。
GenBank序列文件由單個的序列條目組成。序列條目由欄位組成,每個欄位由關鍵字起始,後面為該欄位的具體說明。有些欄位又分若干次子欄位,以次關鍵字或特性表說明符開始。每個序列條目以雙斜杠「//」作結束標記。序列條目的格式非常重要,關鍵字從第一列開始,次關鍵字從第三列開始,特性表說明符從第五列開始。每個欄位可以佔一行,也可以占若干行。若一行中寫不下時,繼續行以空格開始。
序列條目的關鍵字包括LOCUS(代碼),DEFINITION(說明),ACCESSION(編號),NID符(核酸標識),KEYWORDS(關鍵詞),SOURCE(數據來源),REFERENCE(文獻),FEATURES(特性表),BASECOUNT(鹼基組成)及ORIGIN(鹼基排列順序)。先版的核酸序列資料庫將引入新的關鍵詞SV(序列版本號),用「編號.版本號」表示,並取代關鍵詞NID。
LOCUS(代碼):是該序列條目的標記,或者說標識符,蘊涵這個序列的功能。例如,圖4.1中所示的HUMCYCLOX表示人的環氧化酶。該欄位還包括其它相關內容,如序列長度、類型、種屬來源以及錄入日期等。說明欄位是有關這一序列的簡單描述,如本例為人環氧化酶-2的mRNA全序列。
ACCESSION(編號):具有唯一性和永久性,如本例中代碼M90100用來表示上述人環氧化酶-2的mRNA序列,在文獻中引用這個序列時嘩茄,應該以此編號為准。
KEYWORDS(關鍵詞)欄位:由該序列的提交者提供,包括該序列的基因產物以及其它相關信息,如本例中環氧化酶-2(-2),前列腺素合成酶(synthase)。
SOURCE(數據來源)欄位:說明該序列是從什麼生物體、什麼組織得到的,如本例中人臍帶血(umbilicalvein)。次關鍵字ORGANISM(種屬)指出該生物體的分類學地位,如本例人、真核生物等等(詳見圖4.1)。
REFERENCE(文獻)欄位:說明該序列中的相關文獻,包括AUTHORS(作者),TITLE(題目)及JOURNAL(雜志名)等,以次關鍵詞列出。該欄位中還列出醫學文獻摘要資料庫MEDLINE的代碼。該代碼實際上是個超文本鏈接,點擊它可以直接調用上述文獻摘要。一個序列可以有多篇文獻,以不同序號表示,並給出該序列中的哪一部分與文獻有關。
FEATURES(特性表):具有特定的格式,用來詳細描述序列特性。特性表中帶有『/db-xref/』標志的字元可以連接到其它資料庫,如本例中的分類資料庫(taxon9606),以及蛋白質序列資料庫(PID:g181254)。序列中各部分的位置都在表中標明,5』非編碼區(1-97),編碼區(98-1912),3』非編碼區(1913-3387),多聚腺苷酸重復區域(3367-3374),等等。翻譯所得信號肽以及最終蛋白質產物也都有所說明。當然,這個例子只是特性表的部分注釋信息,但已經足以說明其詳細程度。
接下來是鹼基含量欄位,給出序列中的鹼組成,如本例中1010個A,712個C,633個G,1032個T。ORIGIN行是序列的引導行,接下來便是鹼基序列,以雙斜杠行「//」結束。
·EMBL資料庫結構
EMBL資料庫的基本單位也是序列條目,包括核甘酸鹼基排列順序和注釋兩部分。序列條目由欄位組成,每個欄位由標識字起始,後面為該欄位的具體說明。有些欄位又分若干次子欄位,以次標識字或特性表說明符開始,最後以雙斜杠「//」作本序列條目結束標記。
條目的關鍵字包括ID(序列名稱),DE(序列簡單說明),AC(序列編號),SV(序列版本號),KW(與序列相關的關鍵詞),OS(序列來源的物種名),OC(序列來源的物種學名和分類學位置),RN(相關文獻編號或遞交序列的注冊信息),RA(相關文獻作者或遞交序列的作者),RT(相關文獻題目),RL(相關猛檔文獻雜志名或遞交序列的作者單位),RX(相關文獻Mediline引文代碼),RC(相關文獻注釋),RP(相關文獻其他注釋),CC(關於序列的注釋信息),DR(相關資料庫交叉引用號),FH(序列特徵表起始),FT(序列特徵表子項),SQ(鹼基種類統計數)。
其它常用核酸序列資料庫
·dbEST
dbEST資料庫專門收集EST數據,該資料庫有自己的格式,包括識別符、代碼、序列數據以及dbEST的注釋摘要,也按DNA的種類分成了若乾子資料庫。1998年5月8日版的dbEST共包括1.6_106條EST。其中有1百萬條人的EST,30萬條小鼠和大鼠的EST。
·GSDB
GSDB是基因組序列資料庫(GenomeSequenceDataBase),由美國新墨西哥州SantaFe的國家基因組資源中心創建。GSDB收集、管理並且發布完整的DNA序列及其相關信息,以滿足基因組測序中心需要。該資料庫採用伺服器-客戶機關系資料庫模式,大規模測序機構可以通過計算機網路向伺服器提交數據,並在發送之前對數據進行檢查,以確保數據的質量。
GSDB資料庫中條目的格式與GenBank中的基本一致,主要區別是GSDB資料庫中增加了GSDBID識別符。
GSDB資料庫可以通過萬維網查詢,也可以使用伺服器-客戶機關系資料庫方式查詢。無論用哪種方法,熟悉資料庫結構化查詢語言sql,對更好地使用GSDB資料庫會有所幫助。
·UniGene
人類基因組計劃的首要任務是對人類基因組進行全序列測定,整個基因組估計有30億個鹼基對,其中大約3%可以編碼蛋白質,其餘部分的生物學功能還不清楚。轉錄圖譜可以把基因組中能夠編碼蛋白質的部分集中起來,因此是一種重要的數據資源。
UniGene試圖通過計算機程序對GeneBank中的序列數據進行適當處理,剔除冗餘部分,將同一基因的序列,包括EST序列片段搜集到一起,以便研究基因的轉錄圖譜。UniGene除了包括人的基因外,也包括小鼠、大鼠等其它模式生物的基因,而下一章將要介紹的HGI資料庫只包括人的基因。該資料庫的標題行(TITLE)給出基因的名稱和簡單說明,表達部位行(EXPRESS)指出該基因在什麼組織中表達以及在基因圖譜中的位置等。此外,列出該基因在核酸序列資料庫GenBank或EMBL和蛋白質序列資料庫SWISS-PROT中的編號的超文本鏈接。
UniGene中部分條目包括已知基因序列,而有些條目則僅有新測得的EST序列片段。這就意味著,這些EST序列所對應的基因尚未搞清,可以用來發現新基因。在描繪基因圖譜及大規模基因表達分析等研究中,UniGene也可以幫助實驗設計者選擇試劑。
UniGene可以通過NCBI或SRS系統訪問
㈡ ASP.NET是什麼
ASP.NET是.NET FrameWork的一部分,是一項微軟公司的技術,是一種使嵌入網頁中的腳本可由網際網路伺服器執行的伺服器端腳本技術,它可以在通過HTTP請求文檔時再在Web伺服器上動態創建它們。 指 Active Server Pages(動態伺服器頁面) ,運行於 IIS(Internet Information Server 服務,是Windows開發的Web伺服器)之中的程序 。
………………………………………………
如果對aspnet感興趣,看看一個大專生怎麼自學aspnet到找到工作。
先做個自我介紹,我07年考上一所很爛專科民辦的學校,學的是生物專業,具體的學校名稱我就不說 出來獻丑了。09年我就輟學了,我在那樣的學校,一年學費要1萬多,但是根本沒有人學習,我實在看不 到希望,我就退學了。
退學後我也迷茫,大專都沒有畢業,我真的不知道我能幹什麼,我在糾結著我能做什麼。所以輟學後 我一段時間,我想去找工作,因為我比較沉默寡言,不是很會說話,我不適合去應聘做業務。我想應聘 做技術的,可是處處碰壁。
一次偶然的機會,我才聽到aspnet這個行業。那天我去新華書店,在計算機分類那邊想找本書學習 。後來有個女孩子走過來,問我是不是讀計算機的,有沒有興趣學習aspnet,然後給我介紹了一下 aspnet現在的火熱情況,告訴我學aspnet多麼的有前景,給我了一份傳單,aspnet培訓的廣告。聽了 她的介紹,我心裡癢癢的,確實我很想去學會一門自己的技術,靠自己的雙手吃飯。
回家後,我就上網查了下aspnet,確實是當今比較熱門的行業,也是比較好找工作的,工資也是相 對比較高。我就下決心想學aspnet了。於是我去找aspnet培訓的相關信息,說真的,我也很迷茫,我 不知道培訓是否真的能像他們宣傳的那樣好,所以我就想了解一段時間再做打算。
後來,我在網路知道看到一篇讓我很鼓舞的文章是一個aspnet高手介紹沒有基礎的朋友怎麼自學入 門學aspnet,文章寫的很好,包含了如何學習,該怎麼學習。他提到一個方法就是看視頻,因為看書實 在太枯燥和費解的,很多我們也看不懂。這點我真的很認同,我自己看書往往看不了幾頁。
我在想,為什麼別人都能自學成才,我也可以的!我要相信自己,所以我就想自學,如果實在學不會 我再去培訓。
主意一定,我就去搜索aspnet的視頻,雖然零星找到一些aspnet的視頻,但是都不系統,我是想找 一個能夠告訴我該怎麼學的視頻,一套從入門到精通的視頻,一個比較完整的資料,最好能有老師教, 不懂可以請教的。
後來我又找到一份很好的視頻,是在IT學習聯盟推出的一份視頻《零基礎aspnet就業班》(喜歡《 零基礎aspnet就業班》的可以復制 sina.lt/bsjr 粘貼瀏覽器地址欄按回車鍵即打開)
下面介紹下我的學習流程,希望對和我一樣完全沒有基礎的朋友有所幫助。
收到他們寄過來的光碟後,我就開始學習了,由於我沒有什麼基礎,我就從最簡單的C#語言視頻教程 學起,話說簡單,其實我還是很多不懂的,只要重復多看幾遍,就能看懂。C#語言我差不多學了一個禮 拜,接下來我就學了winform,SQL Server,html/css/javaScript,差不多也就三個禮拜。我每天都在不 停的寫一些簡單的代碼,這樣一月後我基本掌握了aspnet的全部基礎。
接下來開始學習aspnet高級課程,老師幽默風趣而又輕松的課堂教課,使我發現原來學習aspnet並 不是一件很難的事情。之前我把aspnet基礎學得還不錯,到了到了aspnet高級部分,我覺不又不是很 難,可能老師太牛了,他能把復雜的問題講的比較通俗易懂,有些難點的地方我還是連續看了五六次, 把他弄懂。每天下午6點下班後,吃了飯,馬上跑回家。看視頻,買了幾本筆記本。當時,為了編程還花幾百元了台二手的台式電腦,配置一般,但編程是足夠的。一邊看視頻,一邊記筆記,把重點都記下來,還一邊跟著老師敲代碼,為了能盡早學會aspnet。每天都堅持學5-6個小時。經常學到晚上一點多才睡覺。星期六,日不用上班,每天7點多起床,學到晚上11,12點。那段時間特別辛苦,特別累。在學習aspnet的三個多月里,除了吃飯睡覺工作,剩餘的時間都在學習,因為我知道自己的計算機基礎不是很好,也沒有學過什麼計算機,相對於那些科班的人來說我要比他們付出更多的努力。我只能咬緊牙關,堅持下去,我不能放棄,我要完成我的夢想,我要讓我的家人過上好日子。終於三個多月後我把aspnet教程里的內容和項目都學完了,在學項目的過程中我發現項目特別重要,他能把你學過的知識全部聯系起來,能更好的理解你所學的知識。還有學習過程中,動手很重要,要經常跟著老師動手敲,動手吧,跟著做,一行一行的跟著敲,再試著加一些自己的功能,按照自己的思路敲一些代碼,收獲遠比干聽大的多。 如果遇到暫時對於一些思路不能理解的,動手寫,先寫代碼,慢慢你就會懂了。
於是我就到51job瘋狂的投簡歷,因為我學歷的問題,專科沒有畢業,說真的,大公司沒有人會要我,所以我投的都是民營的小公司,我希望自己的努力有所回報。沒有想過幾天過後,就有面試了,但是第一次面試我失敗了,雖然我自認為筆試很好,因為我之前做了准備,但是他們的要求比較嚴格,需要有一年的項目經驗,所以我沒有被選中。
後來陸續面試了幾家公司,終於功夫不負有心人。我終於面試上的,是在閔行的一家民營的企業,公司規模比較小,我的職務是aspnet開發程序員,但我也比較滿足,開的工資是3500一個月,雖然我知道在上海3500隻能過溫飽的生活,但是我想我足夠了。我至少不用每天都要靠父母養,我自己也能養活自己的。我想只要我繼續努力,我工資一定會翻倍的。
把本文寫出來,希望能讓和我一樣的沒有基礎的朋友有信心,其實我們沒有必要自卑,我們不比別人笨,只要我們肯努力,我們一樣會成功。
…………………………………………
㈢ ASPNET怎樣調用一個存儲過程(帶參數的)
ASPNET怎樣調用一個存儲過程(帶參數的)使用的是Ado.NET中的相關的資料庫操作方法。
Ado.NET連接資料庫有以下幾個步驟:
1:使用配置的資料庫連接串,創建資料庫連接 Connection 對象
2:構建操作的sql語句
3:定義command對象
4:打開數據連接
5:執行命令
舉一個例子,刪除操作
public int DeleteStudent3(int stuID)
{
int result = 0;
using (SqlConnection connection = new SqlConnection(connString))
{
SqlCommand objCommand = new SqlCommand(dboOwner + ".usp_DeleteStudent", connection);
objCommand.CommandType = CommandType.StoredProcere;
objCommand.Parameters.Add("@stuID", SqlDbType.Int).Value = stuID;
connection.Open();
result = objCommand.ExecuteNonQuery();
}
return result;
}
㈣ 現在的公共資料庫是怎麼用的啊TAT
1、現在一般生產製造業用oracle的比較多;
2、商業企業用sybase較多,也有用oracle的;
3、財務管理用sql server的多(用友等),不過現在也都有for oracle版本的了;
4、中小企業網站方面用mysql、sql server的較多,大型的網上商城用orcale的較多。
oracle、sybase都是大型的資料庫,一般用這類資料庫的伺服器操作系統都是linux的;sql server從操作系統的安全性來說企業級運營都會選擇oracle、sybase。另外雖然mysql也是運行在linux上的,但其由於是免費版本,所以企業級也很少用
㈤ c# 連接oracle資料庫的公共類
using System;
using System.Collections.Generic;
using System.Text;
using System.Configuration;
using System.Data.OracleClient;
using System.Data;
using System.Windows.Forms;
using System.Collections;
using Microsoft.VisualBasic.Devices;
using System.Security.Cryptography;
using System.IO;
namespace mydbproc
{
class Encrypt
{
public string MD5(string P_EncryptStr)
{
int num;
byte[] buffer = new byte[P_EncryptStr.Length];
for (num = 0; num < P_EncryptStr.Length; num++)
{
buffer[num] = (byte) P_EncryptStr[num];
}
byte[] buffer2 = new MD5CryptoServiceProvider().ComputeHash(buffer);
string str = "";
for (num = 0; num < buffer2.Length; num++)
{
str = str + buffer2[num].ToString();
}
return str;
}
public string TripleDES(string Value, string password)
{
string s = "";
string str2 = "qcDY6X+aPLw=";
SymmetricAlgorithm algorithm = new ();
algorithm.Key = Convert.FromBase64String(s);
algorithm.IV = Convert.FromBase64String(str2);
algorithm.Mode = CipherMode.ECB;
algorithm.Padding = PaddingMode.PKCS7;
ICryptoTransform transform = algorithm.CreateEncryptor(algorithm.Key, algorithm.IV);
byte[] bytes = Encoding.UTF8.GetBytes(Value);
MemoryStream stream = new MemoryStream();
CryptoStream stream2 = new CryptoStream(stream, transform, CryptoStreamMode.Write);
stream2.Write(bytes, 0, bytes.Length);
stream2.FlushFinalBlock();
stream2.Close();
return Convert.ToBase64String(stream.ToArray());
}
}
class DBProc
{
const string GET_SID = "WMSCONN";
protected string _connStr = string.Empty
public DBProc()
{
//以下自己填寫
string _dataSouce = "";
string _user ="";
string _pw="";
//這你自己填寫
_connStr = "Data Source=" + _dataSouce + ";Persist Security Info=True;User ID=" + _user + ";Password=" + _pw + ";Unicode=True";
}
public string GetConnectionstring()
{
return _connStr;
//ConnectionStringsSection _connectionStringsSection = WebConfigurationManager.GetSection("connectionStrings") as ConnectionStringsSection;
//return _connectionStringsSection.ConnectionStrings[GET_SID].ToString();
}
public DataTable OraExeFill(string cmdStr)
{
DataTable _returnTable = new DataTable();
OracleConnection _connection = new OracleConnection(GetConnectionstring());
try
{
OracleCommand _command = _connection.CreateCommand();
_command.CommandText = cmdStr;
OracleDataAdapter _adapter = new OracleDataAdapter(cmdStr, _connection);
_adapter.Fill(_returnTable);
}
catch (Exception)
{
}
return _returnTable;
}
public bool OraExeSP_UserAuth(string user, string pw, ref string msg)
{
bool _ret = false;
OracleConnection _connection = new OracleConnection(GetConnectionstring());
try
{
try
{
OracleCommand _command = _connection.CreateCommand();
_command.CommandType = CommandType.StoredProcere;
_command.CommandText = "TP.PKG_HR.SP_HR_USER_AUTH_1";
_command.Parameters.Add("P_USER", OracleType.VarChar, 20).Value = user;
_command.Parameters.Add("P_PW", OracleType.VarChar, 50).Value = pw;
_command.Parameters.Add("P_TYPE", OracleType.VarChar, 500).Direction = ParameterDirection.Output;
_command.Parameters.Add("P_RET", OracleType.Number, 1).Direction = ParameterDirection.Output;
_command.Parameters.Add("P_MSG", OracleType.VarChar, 500).Direction = ParameterDirection.Output;
_connection.Open();
_command.ExecuteNonQuery();
_ret = (_command.Parameters["P_RET"].Value != DBNull.Value) ? (Convert.ToInt32(_command.Parameters["P_RET"].Value) > 0) : false;
msg = (_command.Parameters["P_MSG"].Value != DBNull.Value) ? _command.Parameters["P_MSG"].Value.ToString() : "";
}
catch (Exception ex)
{
msg = ex.Message.ToString();
}
}
finally
{
_connection.Close();
}
return _ret;
}
public bool OraExeFill(string cmdStr,ref DataTable _dt,ref string _msg)
{
bool _ret=false;
OracleConnection _connection = new OracleConnection(GetConnectionstring());
try
{
OracleCommand _command = _connection.CreateCommand();
_command.CommandText = cmdStr;
OracleDataAdapter _adapter = new OracleDataAdapter(cmdStr, _connection);
_adapter.Fill(_dt);
_ret=true;
}
catch (Exception e)
{
_msg=e.Message;
}
return _ret;
}
public string OraExeScalar(string cmdStr, ref string msg)
{
string _scalarValue = "";
DataTable _returnTable = new DataTable();
OracleConnection _connection = new OracleConnection(GetConnectionstring());
try
{
_connection.Open();
OracleCommand _command = _connection.CreateCommand();
_command.CommandText = cmdStr;
_scalarValue = _command.ExecuteScalar().ToString();
}
catch (Exception ex)
{
msg = ex.Message.ToString();
return "";
}
finally
{
_connection.Close();
}
return _scalarValue;
}
public bool OraExeNonQuery(string cmdStr, ref string msg)
{
bool _ret = false;
OracleConnection _connection = new OracleConnection(GetConnectionstring());
try
{
_connection.Open();
OracleTransaction _trans = _connection.BeginTransaction();
OracleCommand _command = _connection.CreateCommand();
_command.Transaction = _trans;
try
{
_command.CommandText = cmdStr;
_command.ExecuteNonQuery();
_trans.Commit();
_ret = true;
}
catch (Exception ex1)
{
_trans.Rollback();
msg = ex1.Message.ToString();
}
}
catch (Exception ex)
{
msg = ex.Message.ToString();
}
finally
{
_connection.Close();
}
return _ret;
}
public bool OraExeNonQuery(ArrayList cmdStr, ref string msg)
{
bool _ret = false;
OracleConnection _connection = new OracleConnection(GetConnectionstring());
try
{
_connection.Open();
OracleTransaction _trans = _connection.BeginTransaction();
OracleCommand _command = _connection.CreateCommand();
_command.Transaction = _trans;
try
{
for (int i = 0; i < cmdStr.Count; i++)
{
_command.CommandText = cmdStr[i].ToString();
_command.ExecuteNonQuery();
}
_trans.Commit();
_ret = true;
}
catch (Exception ex1)
{
_trans.Rollback();
msg = ex1.Message.ToString();
}
}
catch (Exception ex)
{
msg = ex.Message.ToString();
}
finally
{
_connection.Close();
}
return _ret;
}
}
}