gdr資料庫
『壹』 那位大哥能幫我設計一個資料庫框架(access)
學習JDBC以來一直想實現一個簡單的封裝來方便編程但是由於水平有限一直沒有較好的辦法,看了IBM開發網上的兩篇文章以後感覺作者的設計思想很好一定能擴充成一個實用的JDBC封裝。所以我在文章提供的源碼基礎上加了一些功能這些功能包括支持多種數據類型,處理了空值,利用反射方便的在Row對象和值對象之間進行轉換,還有加了一個我自認為通用的DAO類來方便用戶的操作。
我把源碼提供出來有兩個目的一鍪竅M�馨鎦�任一鉤躚У某躚д呤煜�DBC,另外就是請各位高手不吝賜教,改進程序中的錯誤如果能將你們的對JDBC的封裝方法提供出來那就更好了(不要說你們只用EJB或者Hibernate,JDO什麼的?)。
設計思想
把DBMS抽象成類Database,這個類負責管理資料庫連接以及提供表對象。
把資料庫中的一張或多張表抽象成類Table,這個類中提供對表的添加,修改,刪除的JDBC封裝。
將資料庫表中的一條記錄抽象成類Row,這個類用HashMap保存關系資料庫中表格中一行數據的欄位名和值並提供一些相關操作。另外這個類還提供了兩個靜態方法用於在Row對象和ValueObject之間進行方便的轉換。
把對個Row的集合抽象成RowSet,這個類中用一個vector把多個Row對象保存起來並提供一些相關操作。
代碼分析
由於已經給出源碼所以我只對代碼中關鍵的和需要注意的地方加以說明,大家可以執行源碼一邊演示一邊體會。
Database類源碼如下:
package com.gdr
j.util.database;
import java.sql.*;
import javax.sql.*;
import com.gdrj.util.servicelocator.*;
public class Database
{
/**
* 這個資料庫連接成員只有在與資料庫直接建立連接的情況下是有效的
*/
private Connection conn = null;
/**
* 當這個參數有效時,表明程序是直接與資料庫建立的連接而不是從連接池裡取得連接
*/
private String url, user, password;
/**
* 當這個參數有效時,表明程序是從連接池裡取得連接。
*/
private String datasource;
/**
* 用資料庫地址,用戶名,密碼初始化資料庫對象,這個構造器用於程序是直接
* 與資料庫建立連接的情況。
* @param url
* @param user
* @param password
*/
public Database(String url, String user, String password)
{
this.url = url;
this.user = user;
this.password = password;
}
/**
* 用JNDI數據源名初始化資料庫對象,這個構造器用於從連接池取資料庫連接的情況。
* @param datasource
*/
public Database(String datasource)
{
this.datasource = datasource;
}
/**
* 得到資料庫連接,對於是否從連接池裡取連接做了自動處理即根據用戶調用了哪個構造器
* 來判斷是否直接與資料庫建立連接還是從連接池裡取連接。
* 對於用戶來說不用考慮程序是從那裡取得連接,他只管正確的初始化資料庫對象。
* @return * @throws SQLException
*/
public Connection getConnection() throws Exception
{
if (datasource == null)
{
//直接與資料庫建立連接
if (conn == null)
{
conn = DriverManager.getConnection(url, user, password);
}
}
else
{
//從應用伺服器的連接池裡取得連接
ServiceLocator sl = ServiceLocator.getInstance();
DataSource ds = sl.getDataSource(datasource);
return ds.getConnection();
//每調用一次都返回一個連接池中的資料庫連接
}
return conn;
}
/**
* 釋放連接,如果是直接與資料庫連接的情況則什麼也不做
* 如果是從連接池中取得的�幽敲詞頭糯�吹牧�?
* @param conn
*/
public void disConnect(Connection connection)
{
if (datasource != null)
{
//只處理從連接池取連接的情況
try
{
if (connection != null)
{
connection.close();
}
}
catch (Exception ex) {}
}
}
/**
* 得到與參數名對應的表對象,注意這里不作任何資料庫操作
* @param name
* @return
*/
public Table getTable(String name)
{
return new Table(this, name);
}
}
這個類是對DBMS的抽象,所以使用時應用程序中只要有一個Database對象就夠了,如果你是以與資料庫之間建立連接的方式使用那麼你用Database(String url, Stri
ng user, String password)構造器進行初始化。如果是從應用伺服器的連接池中取得連接的方式使用那麼用Database(String datasource)構造器初始化,這樣以後你使用這個對象進行getConnection和disConnection時就揮萌タ悸鞘賈氈3忠桓雋�?C/S方式),還是將連接返回連接池了因為在disConnection中已經做了處理。集體使用方法將Table類。在getConnection中的從連接池中取連接的代碼你只要參考以下《J2EE核心模式》中的服務定位器模式就知道是怎麼回事了,你在用Database(String url, String user, String password)初始化時其中的代碼不起作用。
Table類源碼如下:
package com.gdrj.util.database;
import java.sql.*;
import java.util.*;
import com.gdrj.util.*;
public class Table
{
/**
* 通過這個資料庫對象得到資料庫連接
*/
private Database database;
/**
* 資料庫中一個或多個(只限查詢)表的名
*/
private String name;
/**
* 初始化表對象,此時不作任何資料庫相關操作
* 一般通過database的getTable調用
* @param database
* @param name
*/
public Table(Database database, String name)
{
this.database = database;
this.name = name;
}
/**
* 查詢某一行
* @return
*/
public Row getRow(String fields, String criteria, Object[] args)
throws DBAccessException
{
RowSet rows = executeQuery(fields, criter
ia, args);
if (rows == null)
{
return null;
}
return rows.get(0);
}
/**
* 得到一個多行記錄
* @param criteria 查詢條件
* @param args 查詢條件的參數列表
* @return
*/
public RowSet getRows(String fields, String criteria, Object[] args)
throws DBAccessException
{
return executeQuery(fields, criteria, args);
}
/**
* 執行SQL查詢
* @param fields 要查詢的欄位,如果傳入null則表示查詢表中所有欄位
* @param criteria用戶輸入的查詢Where條件
* @param args 用到的參數數組
* @return 返回符合結果行集
*/
private RowSet executeQuery(String fields, String criteria, Object[] args)
throws DBAccessException
{
Connection conn = null;
RowSet rows = new RowSet();
String sql = null;
if (fields == null)
{
fields = "*";
}
try
{
conn = database.getConnection();
//取得資料庫連接,在方法內部對不同的連接情況進行了處理
sql = "select " + fields + " from " + name + ( (criteria == null) ? "" : (" where " + criteria));
PreparedStatement pstmt = conn.prepareStatement(sql);
if (args != null)
{
//如果有查詢參數則設置參數
for (int i = 0; i < args.length; i++)
{
pstmt.setO
bject(i + 1, args[i]);
}
}
ResultSet rs = pstmt.executeQuery();
ResultSetMetaData rsmd = rs.getMetaData();
int cols = rsmd.getColumnCount();
/**@todo 判斷是否為零*/
if (cols == 0) { return null; }
while (rs.next())
{
Row row = new Row();
for (int i = 1; i <= cols; i++)
{
String name = rsmd.getColumnName(i);
Object value = rs.getObject(i);
//作通用類型處理,這樣row中的類型都是Object型的。
/**
* 這里要做空值處理,因為在進行RowToValueObject轉換時如果是空值則不能得到值的類型
* 所以如果是空值那麼把value設置成類型信息
*/
if (value == null)
{
value = Class.forName(rsmd.getColumnClassName(i));
}
// System.out.println(value.getClass());
//用於得到資料庫中的類型對應Java中的什麼類型
row.put(name, value);
}
rows.add(row);
}
rs.close();
pstmt.close();
}
catch (Exception ex)
{
throw new DBAccessException(InforGeter.getErrorInfor(this, "executeQuery", ex, "執行SQL(" + sql + ")查詢時出錯!"));
}
finally
{
database.disConnect(conn);
//調用資料庫對象的釋放連接方法(此方法內對取得連接方式的不同情況做了處理)
}
return rows;
}
/**
* 增加一行
* @param row
*/
public int putRow(Row row) throws DBAccessException
{
return putRow(row, null, null);
}
/**
* 修改一行(沒有條件就是增加)
* @param row
* @param conditions
*/
public int putRow(Row row, String conditions, Object[] args)
throws DBAccessException
{
String ss = "";
int affectableRow = 0;
//執行SQL後影響的行數
if (conditions == null)
{
ss = "INSERT INTO " + name + "(";
for (int i = 0; i < row.length(); ++i)
{
String k = row.getKey(i);
ss += k;
if (i != row.length() - 1)
{
ss += ", ";
}
}
ss += ") VALUES (";
for (int j = 0; j < row.length(); ++j)
{
ss += (row.get(j) == null) ? "null" : "?";
//如果row中有空值則設置為null,否則設置為查詢參數
if (j != row.length() - 1) { ss += ", "; }
}
ss += ")";
}
else
{
ss = "UPDATE " + name + " SET ";
for (int i = 0; i < row.length(); ++i)
{
String k = row.getKey(i);
ss += k + "=" + ( (row.get(i) == null) ? "null" : "?");
//設置查詢參數
if (i != row.length() - 1) { ss += ", "; }
}
ss += " WHERE ";
ss += conditions;
}
Connection conn = null;
try
{
conn = database.getConnection();
PreparedStatement st = conn.prepareStatement(ss);
int j = 0;
//查詢參數計數器
for (int i = 0; i < row.length(); i++)
{
if (row.get(i) != null)
{
//如果不是空則解析查詢參數
st.setObject(++j, row.get(i));
//解析查詢參數
}
}
if (args != null)
{
for (int i = 0; i < args.length; i++)
{
st.setObject(++j, args[i]);
//預定的規則,null不能放到查詢參數中要以name=null的靜態形式存放
}
}
affectableRow = st.executeUpdate();
st.close();
}
catch (Exception ex)
{
ex.printStackTrace();
throw new DBAccessException(InforGeter.getErrorInfor(this, "putRow", ex, "更新表" + name + "中的數據時出錯!"));
}
finally
{
database.disConnect(conn);
}
return affectableRow;
}
/**
* 刪除一行
* @param row
*/
public int delRow(Row row) throws DBAccessException
{
String ss = "";
int affectableRow = 0;
ss = "de
lete from " + name + " where ";
for (int i = 0; i < row.length(); ++i)
{
String k = row.getKey(i);
ss += k + ((row.get(i) == null)?" is null":"=?");
//設置查詢參�鋅罩盪�?
if (i != row.length() - 1)
{
ss += " and ";
}
}
Connection conn = null;
try
{
conn = database.getConnection();
PreparedStatement st = conn.prepareStatement(ss);
int j = 0;
//查詢參數計數器
for (int i = 0; i < row.length(); i++)
{
if (row.get(i) != null)
{
st.setObject(++j, row.get(i));
//解析查詢參數
}
�
affectableRow = st.executeUpdate();
st.close();
}
catch (Exception ex)
{
throw new DBAccessException(InforGeter.getErrorInfor(this, "delRow", ex, "刪除表" + name + "中的數據時出錯!"));
}
finally
{
database.disConnect(conn);
}
return affectableRow;
}
/**
* 有條件的刪除即刪除多行
* @param condition
* @param args
*/
public int delRow(String condition, Object[] args)
throws DBAccessException
{
String ss = "";
int affectableRow = 0;
ss = "delete from " + name + " where ";
ss += condition;
Connection co
nn = null;
try
{
conn = database.getConnection();
PreparedStatement st = conn.prepareStatement(ss);
if (args != null)
{
�or (int i = 0; i < args.length; i++)
{
st.setObject(i + 1, args[i]);
}
}
affectableRow = st.executeUpdate();
st.close();
}
catch (Exception ex)
{
throw new DBAccessException(InforGeter.getErrorInfor(this, "delRow", ex, "刪除表" + name + "中的數據時出錯!"));
}
finally
{
database.disConnect(conn);
}
�eturn affectableRow;
}
}
使用時可以用Database對象的getTable方法傳入資料庫表的名稱來得到一個Table對象。得到這個對象後就可以對這個資料庫表進行操作了,這個類提供了六個方法根據傳過來的參數對資料庫表進行添加修改刪除操作。代碼中沒有特別難懂的地方,需要注意的是我在原有代碼的基礎上對空值進行的處理,在查詢時如果表中的數據是空值的話那麼我把欄位對應的Java類型放到Row對象里,因為在進行Row對象到值對象的轉換時用到了java反射API必須知道Row中的欄位值的類型才能去調用值對象的setXXXX方法(見Row對象的toValueObject方法)。
行對象的源碼如下:
package com.gdrj.util.database;
import java.util.*;
import java.math.BigDecimal;
import java.lang.reflect.*;
public class Row
{
『貳』 手機的內存卡里文件夾名字的意識
這些都是手機系統用來裝文件的文件夾。
audio里裝的是聲音文件
email里裝的是電子郵件
kjava里裝的是java程序或java游戲
mms里裝的是彩信
picture里裝的是圖片
video里裝的是錄像
system是系統文件夾里裝的是系統文件。別的不太清楚了,下面的是NOKIA手機的system目錄
下面介紹C:\system\Apps文件夾中一些默認的文件:
C:\system\Apps\Applnst\Appinst.ini 這個文件是用來記錄安裝軟體的信息,隨著軟體安裝的增多而增大。
C:\system\Apps\PhotoAlbum\PhotoAlbum.ini 圖片瀏覽器的初始化文件
C:\system\Apps\profileApp\dbProfile.db NG的資料庫文件,用來記錄安裝軟體的信息,隨著軟體安裝的增多而增大。
C:\system\Apps\SystemExplorer 這個文件夾就是SeleQ軟體的安裝文件夾
C:\system\Apps\NgageXX.tmp 臨時文件,從文件名看估計時NG運行時間記錄文件。
另外如果你的NG安裝了Q9,在C:\system\Apps中會出現Q9FEPLoader和Q9Trad這兩個文件夾。
C:\system\bootdata\
NG導入數據文件夾。文件夾中的CommonData.D00 FirstBoot.dat HALData.dat LocaleData.D01 SIMLanguage.dat這5個文件大小固定不變的,分別為17b、0b、16b、70b、4b。其中SIMLanguage.dat是記錄SIM卡語言種類的。
C:\system\Data這個文件夾記錄程序初始化或運行時的數據的。
C:\system\Data\cbs 這個文件夾下有兩個dat文件,其中cbs0.dat的大小不變,為71b。
C:\system\Data\saveddecks 這個文件夾默認為空,作用與手機服務商的網路有關。
C:\system\Data\wapstore 這個文件夾主要用來存儲用WAP上網時的一些設定和網頁緩存。
C:\system\Data\Applications.dat NG的應用程序與游戲安裝數據記錄文件,隨著軟體安裝的增多而增大。
C:\system\Data\backgroundimage.mbm NG保存在系統中的牆紙圖片文件,有了這個文件就算你的JPG格式的牆紙文件丟失,牆紙也會存在,另外如果關閉牆紙功能,這個文件會自動刪除。
C:\system\Data\Bookmarks.db 書簽數據文件,用來記錄WAP地址。
C:\system\Data\CACerts.dat 安裝各種軟體的證書文件
C:\system\Data\Calcsoft NG自帶的計算器
C:\system\Data\Calendar NG自帶的日歷
C:\system\Data\CLOCKAPP.dat 時鍾設定存檔文件
C:\system\Data\cngsktmm.dat 如果你的Q9不是注冊版,那麼在使用一段時間後要手動刪除這個文件,才能繼續使用Q9。
C:\system\Data\CntModel.ini 電話本初始化文件
C:\system\Data\Contacts.cdb 電話本數據文件,隨著電話本記錄的增多而增大。
C:\system\Data\Logdbu.dat NG的通訊數據文件,包括來電,去電,通話時間,GPRS流量等等。
C:\system\Data\Notepad.dat 當你使用了記事本後會生產這個文件,如果你不想使用記事本,可以刪除這個文件。
C:\system\Data\NITZ.dat 默認大小為1b
C:\system\Data\Pinboard 收藏夾數據文件
C:\system\Data\q9regdata.dat 如果你的Q9正式注冊了,會生成這個文件。
C:\system\Data\RealPlayer.ini NG自帶的多媒體播放器RealOne初始化文件。
C:\system\Data\SavedDecks.db 手機服務商的網路數據文件
C:\system\Data\smsreast.dat smssegst.dat NG的簡訊設定存檔文件
C:\system\Data\Template.n01 NG簡訊信模版文件
C:\system\Data\UnitConverter.int NG自帶的單位轉換器初始化文件
C:\system\Data\VoCoSModelData.db 和媒體聲音有關的數據文件
C:\system\Data\wapreast.dat WAP設定存檔文件,初始化大小為59b。
C:\system\Data\yehoe134.rsc_01 如果你的Q9不是注冊版,那麼在使用一段時間後要手動刪除這個文件,才能繼續使用Q9。
C:\system\favourites 收藏夾,初始化為空。
C:\system\fep\q9xptrad.fep 與Q9有關的系統文件
C:\system\fonts Q9字體文件夾,裡面有兩個字體文件q9font12.gdr q9font16.gdr。
C:\system\install\install.log 在NG中安裝軟體的日誌文件。
C:\system\install\文件夾中還會有你安裝的軟體的sis記錄文件,比如安裝SeleQ後會在這個文件夾中生成Ximplify.SeleQ.v1.65.SiS這個文件。
C:\system\Mail 簡訊息存儲文件夾。
C:\system\Mtm\Mtm Registry v2 Z盤連接文件。
C:\system\Scheles\Scheles.dat 待辦事宜數據文件。
C:\system\ShareddataNG功能設定文件,包括手機設備設置、通話設置、連接設置、時間設置、網路設置等。更改Tools-Settings裡面的設置後,這個文件夾里的文件就會發生變化。
C:\System\Temp\ 存儲臨時文件的文件夾,初始化為空。
C:\System\Q9UNINSTALLFONTS… Q9卸載時用的文件。
C:\System\System.ini 系統初始化配置文件。
『叄』 如何生成awr報告
1.生成單實例 AWR 報告:@$ORACLE_HOME/rdbms/admin/awrrpt.sql2.生成 Oracle RAC AWR 報告:@$ORACLE_HOME/rdbms/admin/awrgrpt.sql3.生成 RAC 環境中特定資料庫實例的 AWR 報告:@$ORACLE_HOME/rdbms/admin/awrrpti.sql4.生成 Oracle RAC 環境中多個資料庫實例的 AWR 報告的方法:@$ORACLE_HOME/rdbms/admin/awrgrpti.sql5.生成 SQL 語句的 AWR 報告:@$ORACLE_HOME/rdbms/admin/awrsqrpt.sql6.生成特定資料庫實例上某個 SQL 語句的 AWR 報告:@$ORACLE_HOME/rdbms/admin/awrsqrpi.sql--生成 AWR 時段對比報告7.生成單實例 AWR 時段對比報告@$ORACLE_HOME/rdbms/admin/awrddrpt.sql8.生成 Oracle RAC AWR 時段對比報告@$ORACLE_HOME/rdbms/admin/awrgdrpt.sql9.生成特定資料庫實例的 AWR 時段對比報告@$ORACLE_HOME/rdbms/admin/awrddrpi.sql10.生成 Oracle RAC 環境下特定(多個)資料庫實例的 AWR 時段對比報告@$ORACLE_HOME/rdbms/admin/awrgdrpi.sql來源: 51cto 作者:Oracle小混子
『肆』 delphi能否實現用sql語句從sql的表中提取數據並進行運算
與DELPHI無關。資料庫的表設計有一條重要規則,凡是可以通過表中數據運算可以得出的結果,都不要在表中另設欄位。比如單價乘以數量等於金額,那麼,金額這個欄位就不就該在表中出現。由此可知,在SQL語句中,是可以進行數據運算的;比如表中如果已經有了出生日期這個欄位,我們就不在需要年齡這段欄位,但是用戶在瀏覽查詢的數據的時候,又需要看到年齡,因為誰也不願意去根據出生年月來搬手指計算年齡。因此我們必須在顯示數據的柵格表中添加一列,顯示年齡,這個年齡就要在SQL語句中計算了。先在本代碼段的BEGIN前面定義一個變數DQRQ:string;然後再代碼段中給它賦值:dqrq:=dateTostr(date);
這樣我們就可以寫如下SQL語句:
'select zyid as 住院號,xm as 姓名,ryrq as 入院日期,(#'+dqrq+'# - csny)/365 as 年齡,'+
'jgys as 經管醫生,cyrq as 出院日期,zyfy as 住院費用,'+
'fycdz as 費用承擔者,jcrq as 交出日期,scr as 收取人,'+
'gdrq as 歸檔日期,gdr as 歸檔人 from bagdb '+
'where jcrq is null and scr is null and cyrq is not null and ryhs is not null '+
'ORDER BY cyrq asc';
請注意「(#'+dqrq+'# - csny)/365 as 年齡」的寫法。
這是ACCESS的寫法,SQL server 2000的寫法有些不同。
SQL server 2000的日期值是不需要#的,它的寫法如:
TB_BR_JB.RYRQ BETWEEN '''+edit15.Text+''' AND '''+edit16.Text+''' ';RYRQ(入院日期)在表中是日期型欄位。
『伍』 生成oracle資料庫awr報告所需要的許可權
1.生成單實例
awr
報告:
@$oracle_home/rdbms/admin/awrrpt.sql
2.生成
oracle
rac
awr
報告:
@$oracle_home/rdbms/admin/awrgrpt.sql
3.生成
rac
環境中特定資料庫實例的
awr
報告:
@$oracle_home/rdbms/admin/awrrpti.sql
4.生成
oracle
rac
環境中多個資料庫實例的
awr
報告的方法:
@$oracle_home/rdbms/admin/awrgrpti.sql
5.生成
sql
語句的
awr
報告:
@$oracle_home/rdbms/admin/awrsqrpt.sql
6.生成特定資料庫實例上某個
sql
語句的
awr
報告:
@$oracle_home/rdbms/admin/awrsqrpi.sql
--生成
awr
時段對比報告
7.生成單實例
awr
時段對比報告
@$oracle_home/rdbms/admin/awrddrpt.sql
9.生成
oracle
rac
awr
時段對比報告
@$oracle_home/rdbms/admin/awrgdrpt.sql
10.生成特定資料庫實例的
awr
時段對比報告
11.生成
oracle
rac
環境下特定(多個)資料庫實例的
awr
時段對比報告
『陸』 我手機里帶的卡里有N多文件
audio里裝的是聲音文件
email里裝的是電子郵件
kjava里裝的是java程序或java游戲
mms里裝的是彩信
picture里裝的是圖片
video里裝的是錄像
system是系統文件夾里裝的是系統文件。別的不太清楚了,下面的是NOKIA手機的system目錄
下面介紹C:\system\Apps文件夾中一些默認的文件:
C:\system\Apps\Applnst\Appinst.ini 這個文件是用來記錄安裝軟體的信息,隨著軟體安裝的增多而增大。
C:\system\Apps\PhotoAlbum\PhotoAlbum.ini 圖片瀏覽器的初始化文件
C:\system\Apps\profileApp\dbProfile.db NG的資料庫文件,用來記錄安裝軟體的信息,隨著軟體安裝的增多而增大。
C:\system\Apps\SystemExplorer 這個文件夾就是SeleQ軟體的安裝文件夾
C:\system\Apps\NgageXX.tmp 臨時文件,從文件名看估計時NG運行時間記錄文件。
另外如果你的NG安裝了Q9,在C:\system\Apps中會出現Q9FEPLoader和Q9Trad這兩個文件夾。
C:\system\bootdata\
NG導入數據文件夾。文件夾中的CommonData.D00 FirstBoot.dat HALData.dat LocaleData.D01 SIMLanguage.dat這5個文件大小固定不變的,分別為17b、0b、16b、70b、4b。其中SIMLanguage.dat是記錄SIM卡語言種類的。
C:\system\Data這個文件夾記錄程序初始化或運行時的數據的。
C:\system\Data\cbs 這個文件夾下有兩個dat文件,其中cbs0.dat的大小不變,為71b。
C:\system\Data\saveddecks 這個文件夾默認為空,作用與手機服務商的網路有關。
C:\system\Data\wapstore 這個文件夾主要用來存儲用WAP上網時的一些設定和網頁緩存。
C:\system\Data\Applications.dat NG的應用程序與游戲安裝數據記錄文件,隨著軟體安裝的增多而增大。
C:\system\Data\backgroundimage.mbm NG保存在系統中的牆紙圖片文件,有了這個文件就算你的JPG格式的牆紙文件丟失,牆紙也會存在,另外如果關閉牆紙功能,這個文件會自動刪除。
C:\system\Data\Bookmarks.db 書簽數據文件,用來記錄WAP地址。
C:\system\Data\CACerts.dat 安裝各種軟體的證書文件
C:\system\Data\Calcsoft NG自帶的計算器
C:\system\Data\Calendar NG自帶的日歷
C:\system\Data\CLOCKAPP.dat 時鍾設定存檔文件
C:\system\Data\cngsktmm.dat 如果你的Q9不是注冊版,那麼在使用一段時間後要手動刪除這個文件,才能繼續使用Q9。
C:\system\Data\CntModel.ini 電話本初始化文件
C:\system\Data\Contacts.cdb 電話本數據文件,隨著電話本記錄的增多而增大。
C:\system\Data\Logdbu.dat NG的通訊數據文件,包括來電,去電,通話時間,GPRS流量等等。
C:\system\Data\Notepad.dat 當你使用了記事本後會生產這個文件,如果你不想使用記事本,可以刪除這個文件。
C:\system\Data\NITZ.dat 默認大小為1b
C:\system\Data\Pinboard 收藏夾數據文件
C:\system\Data\q9regdata.dat 如果你的Q9正式注冊了,會生成這個文件。
C:\system\Data\RealPlayer.ini NG自帶的多媒體播放器RealOne初始化文件。
C:\system\Data\SavedDecks.db 手機服務商的網路數據文件
C:\system\Data\smsreast.dat smssegst.dat NG的簡訊設定存檔文件
C:\system\Data\Template.n01 NG簡訊信模版文件
C:\system\Data\UnitConverter.int NG自帶的單位轉換器初始化文件
C:\system\Data\VoCoSModelData.db 和媒體聲音有關的數據文件
C:\system\Data\wapreast.dat WAP設定存檔文件,初始化大小為59b。
C:\system\Data\yehoe134.rsc_01 如果你的Q9不是注冊版,那麼在使用一段時間後要手動刪除這個文件,才能繼續使用Q9。
C:\system\favourites 收藏夾,初始化為空。
C:\system\fep\q9xptrad.fep 與Q9有關的系統文件
C:\system\fonts Q9字體文件夾,裡面有兩個字體文件q9font12.gdr q9font16.gdr。
C:\system\install\install.log 在NG中安裝軟體的日誌文件。
C:\system\install\文件夾中還會有你安裝的軟體的sis記錄文件,比如安裝SeleQ後會在這個文件夾中生成Ximplify.SeleQ.v1.65.SiS這個文件。
C:\system\Mail 簡訊息存儲文件夾。
C:\system\Mtm\Mtm Registry v2 Z盤連接文件。
C:\system\Scheles\Scheles.dat 待辦事宜數據文件。
C:\system\ShareddataNG功能設定文件,包括手機設備設置、通話設置、連接設置、時間設置、網路設置等。更改Tools-Settings裡面的設置後,這個文件夾里的文件就會發生變化。
C:\System\Temp\ 存儲臨時文件的文件夾,初始化為空。
C:\System\Q9UNINSTALLFONTS… Q9卸載時用的文件。
C:\System\System.ini 系統初始化配置文件。
我在網上找到的 你可能會用的到
************************************************************
KJAVA 是 百寶箱 你如果是移動用戶 可以登陸
wap.idsk.com 或者 wap.joyes.com
下載游戲 直接到 手機中的 KJAVA 中不用數據線
『柒』 SQL Server 2008 R2中資料庫備份成功,但還原卻提示有異常,求解。
這種備份不需要備份日誌,如果備份有異常,可以考慮換一種備份方式:
1、分離資料庫;
2、把資料庫拷貝走
3、把拷貝的資料庫附加到新的資料庫下,就可以了;
4、原來的資料庫也附加回去,完成!
『捌』 系統結構設計
一、用戶需求分析
全面深入地了解掌握用戶需求是作出一個優良的系統設計的關鍵,也是系統生命力的保證。在需求分析階段,系統設計者應當完全確定用戶的工作范圍與流程。據此,確定系統的全部數據及相應處理,繪出系統數據流圖,從而產生整個評價系統的邏輯模型。
針對地質災害災情評估的特點,可以歸納為五個方面的需求,即:①數據維護;②物理系統(孕災環境危險性)分析;③社會經濟系統(承災區易損性)分析;④風險分析;⑤防治效益評價。
二、設計需求
1.地質災害系統自組織體系
地質災害系統作為一個開放的自組織體系,在內外界持續干擾的作用下,該體系形成漲落,從而體系狀態發生質變,形成一種更加穩定有序的結構。地質災害系統是由孕災環境、致災因子與承災體共同組成的地球表層變異系統。災情則是這一體系漲落作用的產物。
2.系統硬軟體環境的選擇
(1)各種與IBM兼容的PC機(需帶有80387浮點運算器),1兆以上內存,100兆以上硬碟,VGA以上彩色圖形顯示器(卡)。
(2)輸入、輸出設備,包括解析度為0.1×0.1(mm)、帶有國際標准數據交換格式的掃描儀(便於弧段跟蹤、數據矢量化處理和數據格式轉換),CALCOMP、HP系列或與之兼容的數字化儀和繪圖儀。
(3)軟體環境
系統採用美國環境系統研究所(ESRI)研製的PC版ARC/INFO(V3.4-PLUS)系統為基礎軟體。該系統是兩個系統的結合,即描述地圖特徵和拓撲關系的ARC系統和記錄屬性數據的關系型數據管理INFO系統。這種混和數據模型兼顧了空間數據和非空間數據兩種不同性質的數據特點,便於有效地管理這兩種基本的空間數據:描述空間坐標的點、線、面特徵和拓撲結構數據以及這些特性的屬性數據。
3.資料庫的組織結構
計算機作業較之於手工作業,在其精確度、可靠性方面具有很大的優越性。但這一切基於一個先決條件,那便是數據源的准確性。地質災害風險評價系統涉及到的數據源較復雜,既包括自然物理數據,又包含社會經濟發展數據。根據這些數據特點分為:屬性庫、圖形庫和圖像庫三類資料庫。通過分析評價區內各災種成災特點、社會經濟構成,收集各類數據源的數據,評價其精確度、可靠性、可利用性及相互關系,確定入庫的數據項,並給出各數據項的詳細定義,編輯數據詞典。在各相關資料庫之間建立公共特徵碼欄位,將有助於提高數據的檢索查詢效率。根據系統的基本要求和地質災害的基本規律,系統資料庫組織如下:
圖9-1GDRES資料庫組織圖
4.系統總體設計
地質災害災情評估系統是一類專業性的地理信息系統。其總體結構可作如下劃分(圖9-2):
系統運行時,用戶在應用子系統中工作,由應用子系統調用系統功能模塊從而完成對系統數據的處理。
用戶應用子系統是系統的用戶界面。此層的缺失或劃分不當,系統的用戶友好性無從談起。一般而言,應用子系統對應於用戶某一需求的共同作業,此層面的設計與劃分一定要從用戶需求出發,面向地質災害災情評估的實際工作程序,以系統數據流圖為基礎進行。
圖9-2系統總體設計圖
應用子系統建立在對系統功能模塊的調用基礎之上。系統功能模塊可由支撐軟體直接提供。許多支撐軟體雖然功能強大,但一般都是從通用性入手考慮,具體到某一類專業應用系統,開發者仍具有一定工作量的二次開發任務,需要對系統功能模塊進行擴充以滿足特定需求。這類功能擴充定義又來源於上層應用子系統的操作分解,從中抽象出多個子系統中共同的操作,在此基礎上開發擴充功能模塊滿足應用子系統的操作並優化系統整體結構。
5.GDRES結構
(1)系統組織結構的設計從實用性入手,系統組織結構必須面向實際工作內容。為此,我們結合DBMS和GIS設計的概念和原理,將系統分為如下圖所示的三個層次的七個子系統:①孕災區災害分布分析;②孕災區危險程度分析;③承災區受損范圍分析;④承災區價值易損性分析;⑤災害發生概率分析;⑥災害強度分析;⑦災害風險分析。災害強度是綜合考慮孕災區危險性強度及承災區價值易損性的結果,災害風險分析則建立在對中間層兩因素的綜合分析之上。
圖9-3GDRES組織結構圖
(2)系統功能結構設計我們以屬性資料庫、空間資料庫為基礎,設計出面向災害風險分析的用戶應用子系統。各應用子系統都具有以下功能模塊,其中包括屬性資料庫維護、空間資料庫維護、數據檢索查詢、統計查詢、矩陣判斷、空間分析模塊。所有模塊以GIS、DMBS類軟體支撐並根據面向任務擴展產生。模塊處理結果用文本、報表及圖件三種方式輸出,為地質災害的管理和防治提供決策依據。
系統功能結構圖如下:
圖9-4GDRES功能結構圖
『玖』 關於手機殺毒
去KF維修下看看。
C:\Nokia\
C:\system\Apps\
下面介紹C:\system\Apps文件夾中一些默認的文件:
C:\system\Apps\Applnst\Appinst.ini 這個文件是用來記錄安裝軟體的信息,隨著軟體安裝的增多而增大。
C:\system\Apps\PhotoAlbum\PhotoAlbum.ini 圖片瀏覽器的初始化文件
C:\system\Apps\profileApp\dbProfile.db NG的資料庫文件,用來記錄安裝軟體的信息,隨著軟體安裝的增多而增大。
C:\system\Apps\SystemExplorer 這個文件夾就是SeleQ軟體的安裝文件夾
C:\system\Apps\NgageXX.tmp 臨時文件,從文件名看估計時NG運行時間記錄文件。
另外如果你的NG安裝了Q9,在C:\system\Apps中會出現Q9FEPLoader和Q9Trad這兩個文件夾。
C:\system\bootdata\
NG導入數據文件夾。文件夾中的CommonData.D00 FirstBoot.dat HALData.dat LocaleData.D01 SIMLanguage.dat這5個文件大小固定不變的,分別為17b、0b、16b、70b、4b。其中SIMLanguage.dat是記錄SIM卡語言種類的。
C:\system\Data\
這個文件夾記錄程序初始化或運行時的數據的。
C:\system\Data\cbs 這個文件夾下有兩個dat文件,其中cbs0.dat的大小不變,為71b。
C:\system\Data\saveddecks 這個文件夾默認為空,作用與手機服務商的網路有關。
C:\system\Data\wapstore 這個文件夾主要用來存儲用WAP上網時的一些設定和網頁緩存。
C:\system\Data\Applications.dat NG的應用程序與游戲安裝數據記錄文件,隨著軟體安裝的增多而增大。
C:\system\Data\backgroundimage.mbm NG保存在系統中的牆紙圖片文件,有了這個文件就算你的JPG格式的牆紙文件丟失,牆紙也會存在,另外如果關閉牆紙功能,這個文件會自動刪除。
C:\system\Data\Bookmarks.db 書簽數據文件,用來記錄WAP地址。
C:\system\Data\CACerts.dat 安裝各種軟體的證書文件
C:\system\Data\Calcsoft NG自帶的計算器
C:\system\Data\Calendar NG自帶的日歷
C:\system\Data\CLOCKAPP.dat 時鍾設定存檔文件
C:\system\Data\cngsktmm.dat 如果你的Q9不是注冊版,那麼在使用一段時間後要手動刪除這個文件,才能繼續使用Q9。
C:\system\Data\CntModel.ini 電話本初始化文件
C:\system\Data\Contacts.cdb 電話本數據文件,隨著電話本記錄的增多而增大。
C:\system\Data\Logdbu.dat NG的通訊數據文件,包括來電,去電,通話時間,GPRS流量等等。
C:\system\Data\Notepad.dat 當你使用了記事本後會生產這個文件,如果你不想使用記事本,可以刪除這個文件。
C:\system\Data\NITZ.dat 默認大小為1b
C:\system\Data\Pinboard 收藏夾數據文件
C:\system\Data\q9regdata.dat 如果你的Q9正式注冊了,會生成這個文件。
C:\system\Data\RealPlayer.ini NG自帶的多媒體播放器RealOne初始化文件。
C:\system\Data\SavedDecks.db 手機服務商的網路數據文件
C:\system\Data\smsreast.dat smssegst.dat NG的簡訊設定存檔文件
C:\system\Data\Template.n01 NG簡訊信模版文件
C:\system\Data\UnitConverter.int NG自帶的單位轉換器初始化文件
C:\system\Data\VoCoSModelData.db 和媒體聲音有關的數據文件
C:\system\Data\wapreast.dat WAP設定存檔文件,初始化大小為59b。
C:\system\Data\yehoe134.rsc_01 如果你的Q9不是注冊版,那麼在使用一段時間後要手動刪除這個文件,才能繼續使用Q9。
C:\system\favourites 收藏夾,初始化為空。
C:\system\fep\q9xptrad.fep 與Q9有關的系統文件
C:\system\fonts Q9字體文件夾,裡面有兩個字體文件q9font12.gdr q9font16.gdr。
C:\system\install\install.log 在NG中安裝軟體的日誌文件。
C:\system\install\文件夾中還會有你安裝的軟體的sis記錄文件,比如安裝SeleQ後會在這個文件夾中生成Ximplify.SeleQ.v1.65.SiS這個文件。
C:\system\Mail 簡訊息存儲文件夾。
C:\system\Mtm\Mtm Registry v2 Z盤連接文件。
C:\system\Scheles\Scheles.dat 待辦事宜數據文件。
C:\system\Shareddata\
NG功能設定文件,包括手機設備設置、通話設置、連接設置、時間設置、網路設置等。更改Tools-Settings裡面的設置後,這個文件夾里的文件就會發生變化。
C:\System\Temp\ 存儲臨時文件的文件夾,初始化為空。
C:\System\Q9UNINSTALLFONTS… Q9卸載時用的文件。
C:\System\System.ini 系統初始化配置文件。
除了以上說了的,其他全刪除了也行,還能清理一下呢。。。不過其實只用網秦就可以了啊。。。干嗎還這么麻煩。。。呵呵~~要選我為正確答案哦。。
『拾』 資料庫:Oracle 11g AWR 系列五:如何生成 AWR 報告
1.生成單實例 AWR 報告:
@$ORACLE_HOME/rdbms/admin/awrrpt.sql
2.生成 Oracle RAC AWR 報告:
@$ORACLE_HOME/rdbms/admin/awrgrpt.sql
3.生成 RAC 環境中特定資料庫實例的 AWR 報告:
@$ORACLE_HOME/rdbms/admin/awrrpti.sql
4.生成 Oracle RAC 環境中多個資料庫實例的 AWR 報告的方法:
@$ORACLE_HOME/rdbms/admin/awrgrpti.sql
5.生成 SQL 語句的 AWR 報告:
@$ORACLE_HOME/rdbms/admin/awrsqrpt.sql
6.生成特定資料庫實例上某個 SQL 語句的 AWR 報告:
@$ORACLE_HOME/rdbms/admin/awrsqrpi.sql
--生成 AWR 時段對比報告
7.生成單實例 AWR 時段對比報告
@$ORACLE_HOME/rdbms/admin/awrddrpt.sql
9.生成 Oracle RAC AWR 時段對比報告
@$ORACLE_HOME/rdbms/admin/awrgdrpt.sql
10.生成特定資料庫實例的 AWR 時段對比報告
11.生成 Oracle RAC 環境下特定(多個)資料庫實例的 AWR 時段對比報告