>即時新聞-熱門

显示标签为“資料庫管理”的博文。显示所有博文
显示标签为“資料庫管理”的博文。显示所有博文

2008年12月11日星期四

ACCESS 設計小技巧

好久沒有網路放技術了
感謝主計處長官
今天和大家談談ACCESS的設計小技巧

1 表單是人與機器的連絡介面 , 基本上分
單欄式 : 資料表專用
表格式 : [連續表單 ] 查詢表或資料表皆可使用 , 一般用於查詢表
2 如果要設計上述二表的結合 , 可是有流程的喔
1 先設計單欄式表單 [可自訂或資料表]
2 再設計查詢 [不是表單 , 是物件 , 但是一定要建立好關聯喔]
3 設計準則
4 產生表格式表單
5 修改單欄式表單 [可增加按鈕或增加程式]

3 程式內容
例如 : 自動更新
ME.REFRESH

祝學習快樂

2008年9月25日星期四

ACCESS VBA 日曆傳值

Private Sub Calendar7_Click()
Forms![查詢日期]![起始日期].Value = Calendar7.Value
DoCmd.Close
End Sub

ACCESS VBA - 日期

Private Sub 起始日期_LostFocus()
起始日期.Value = Int(Mid(起始日期.Value, 1, 2)) + 1911 & "/" & Month(起始日期.Value) & "/" & Day(起始日期.Value)


End Sub

2008年4月15日星期二

ACCESS 資料庫設計

常常問及資料庫的資料表可否計算
我常見到的手法是利用查詢表完成計算
其實我們可以用表單於整合資料表時
加入欄位間的計算
例如 :
SUB FORM_LOAD()
ME.合計[資料表欄位]=ME.國文+ME.英文+ME.數學
END SUB
很好用喔 試試

2008年4月8日星期二

VBA 自動偵測光碟機

終於學會如何自動偵光碟機代碼
ACCESS 設計時須要運用這樣的技術
希望您一同進步
請參考這網址
http://support.microsoft.com/kb/180766/zh-tw
如果不會使用來信告知

2008年4月2日星期三

ACCESS-資料庫傳送參數

今天使用ACCESS學會了傳送參數的方法
模組 : 這是大家比較不用的區域
試試模組很好用喔
您可以新一個模組
定義新的傳數
例如 :
DIM X AS INTEGER
再至任何表單或報表
建立事件
例如
private sub form_load()
x =1
end sub
您就可以了解變數是全域變數唷

2008年3月30日星期日

ACCESS - 資料防呆設計'

今天使用ACCESS 通常上課老師會教學生使用
上一筆下一筆的巨集精靈設計
但是每到最後一就出現錯誤
現在告訴大家一個方法
就是使用VBA 校正錯誤
請於

docmd.gotorecord,,acnext
docmd.gotorecord,,acfirst
docmd.gotorecord,,acprevious
docmd.gotorecord,,aclast

等程式前方加入下列VBA程式
on error resume next

2008年3月29日星期六

php分頁設計

<?
  $read_num="5";
   $mem_account=$_REQUEST["mem_account"];
$link=mysql_connect("localhost","root","111111");
mysql_select_db("robin_data",$link);

$str="select count(*) from myitem";
$list =mysql_query($str,$link);
list($disscuss_count) = mysql_fetch_row($list);
$str="select * from myitem ";
$list =mysql_query($str,$link);
?>
<table><tr>
<td colspan="2"  bgcolor="#3366CC"><span style="color: #FFFFFF; font-size: 14px;">
請選擇商品頁數<font face="Arial Black"> |
<?
//抓取頁數
$all_page=ceil($disscuss_count/$read_num);
for($i=1;$i<=$all_page;$i++){
echo "<a href='product.php?page_num=$i'> $i </a>|";

echo "<a href='product.php?page_num=0'> 全部商品 </a>|";
?>
</font></strong></td>
<td  bgcolor="#3366CC"><span style="color: #FFFFFF; font-size: 14px;"><font face="Arial Black">目前第<? echo $page_num ?>頁</font></strong></td>
  </tr><tr>
    <td width="177" align="center" bgcolor="#3366CC"><div align="center"><span style="color: #FFFFFF; font-size: 18px;"><strong>商品照片</strong></span></div></td>
      <td width="454" align="center" bgcolor="#3366CC"><div align="center"><span style="color: #FFFFFF; font-size: 18px;"><strong>商品介紹</strong></span></div></td>
      <td width="141" align="center" bgcolor="#3366CC"><div align="center"><span style="color: #FFFFFF; font-size: 18px;"><strong>訂購</strong></span></div></td>
    </tr>    
  
<?
//分頁分析
if(empty($page_num))$page_num="1";
$start_num=$read_num*($page_num-1);
if($page_num=0){
$str="select * from myitem limit $start_num,$read_num";

else{
$str="select * from myitem ";

$list =mysql_query($str,$link);
while(list($item_id,$item_no,$item_name,$item_price,$item_date,$item_co,$item_tel,$item_man,$item_number,$item_memo,$com_date,$fupload,$item_group) = mysql_fetch_row($list)){
echo "<tr><td align='center' ><a href='homeitem.php?item_id=".$item_id."&item_group=".$item_group."'><img src='image/".$fupload."' width='110' height='90' border='0'></a></td><td>".$item_name."<br>".$item_memo."</td><td align='center'><a href='orderitem.php?item_id=".$item_id."&mem_account=".$mem_account."'><img src='image/car.jpg' width='42' height='38' border='0' alt='我要買".$item_name."' ></a></td></tr>";

mysql_close($link);
?>
      </table>

2008年3月28日星期五

php會員管理全部 - 登入會員

登入會員程式.PHP
<form id="form3" name="form3" method="post" action="檢查會員.php">
          <tr>
            <td height="64" rowspan="3"><p align="right"><br />
            </p>              </td>
           
            <td width="169" height="17"> <span class="style2">
              <input name="mem_account" type="text" id="mem_account" size="12" />
              <br />
              <label></label>
            </span></td>
            
          </tr>
          <tr>
            <td height="17"><span class="style2">
               
                  <input name="mem_pass" type="password" id="mem_pass" size="12" />
            </span></td>
          </tr>
          <tr>
            <td height="25"> <a href="JavaScript:document.form3.submit()"><img src="image/dbtr01.jpg" width="57" height="25" border="0" /></a><a href="../member.php"><img src="image/dbtr02.jpg" width="57" height="25" border="0" /></a></td>
          </tr>
          <tr></form>

檢查會員.PHP
<?
$link=mysql_connect("localhost","帳號","密碼");
mysql_select_db("robin_data",$link);
 $str="select * from member WHERE  mem_account='$mem_account' and mem_pass='$mem_pass'";
 $list =mysql_query($str,$link);
 $num = mysql_fetch_row($list);
if ($num>0){
header("location:memlogin.php?mem_account=$mem_account"); 
       }
  else{


header("location:membernot.php");    }

?>

php會員管理全部 - 加入會員

以下是會員管理全部 可以COPY 但是要自己轉半型
加入會員.HTML

<form id="form1" name="form1" method="post" action="檢查重複程式.PHP">
  <table width="400" height="400" border="0" align="center" cellpadding="0" cellspacing="0" background="image/dbtadd01.jpg" >
  <tr ><td height="20"></td></tr>
  <tr><td>
  <table width="317" align="center">
    <tr>
      <td width="110">
        會員名稱</td>
            <td width="229"><input name="mem_name" id="mem_name" size="20" /></td>
          </tr>
    <tr>
      <td height="22">會員帳號</td>
            <td><label>
              <input name="mem_account" type="text" id="mem_account" size="20" />
              </label></td>
          </tr>
    <tr>
      <td height="20">會員密碼</td>
            <td><input name="mem_pass" type="password" id="mem_pass" size="20" /></td>
          </tr>
    <tr>
      <td height="19">確認密碼</td>
            <td><input name="check_pass" type="password" id="check_pass" onBlur="check()" size="20"/></td>
          </tr>
    <tr>
      <td height="40">電子郵件</td>
            <td colspan="3"><input id="mem_mail" size="30" name="mem_mail" /></td>
          </tr>
    <tr>
      <td> </td>
            <td colspan="3"><label>
              <a href="JavaScript:document.form1.submit()"><img src="image/dbtm03.jpg" width="106" height="34" border="0" /></a><a href="JavaScript:document.form1.reset()"><img src="image/dbtm04.jpg" width="104" height="34" border="0" /></a>
              <div align="center"></div>
              </label></td>
          </tr>
    </table>
        </td>
        </tr>
    </table>
    </form>

檢查重複程式.PHP
<?
$mem_account=$_REQUEST["mem_account"];   

$link=mysql_connect("localhost","帳號","密碼");
mysql_select_db("robin_data",$link);
 $str="select * from member WHERE mem_account= '$mem_account'";
 $list =mysql_query($str,$link);
 $num = mysql_fetch_row($list);
if ($num>0){
        header("location:mem_again.php"); 
  }
  else{

$stra="insert into member(mem_name,mem_account,mem_pass,mem_mail,mem_date) values ( '$mem_name', '$mem_account', '$mem_pass', '$mem_mail',now())";
mysql_query($stra);
 header("Location:mem_addok.php?shop_account=".$_REQUEST[mem_account]."&mem_account=".$_REQUEST[mem_account]);
   }
?>

2008年3月26日星期三

找尋PHP的資料驗證程式

大家好自己寫了一個PHP資料驗證
面臨一個問題必須執行二次才有效果
真是令我百思不解
下回改用資料庫設計
成功會將它放在網路上讓大家參考

2008年3月25日星期二

SQL select

SELECT

語法:
 SELECT [STRAIGHT_JOIN] [SQL_SMALL_RESULT] [DISTINCT | ALL]
select_expression,...
[INTO OUTFILE 'file_name' export_options]
[FROM table_references
[WHERE where_definition]
[GROUP BY col_name,...]
[HAVING where_definition]
[ORDER BY {unsigned_integer | col_name} [ASC | DESC] ,...]
[LIMIT [offset,] rows]
[PROCEDURE procedure_name] ]

範例:

排序輸出
select * from 資料表名 order by 欄位名稱

反向排序輸出
select * from 資料表名 order by 欄位名稱 desc

輸出1-5茟
select * from table LIMIT 5;

MYSQL竹旳資料類型解說

資料型態 說明
TINYINT 有符號的範圍是-128到127,無符號的範圍是0到255。
SMALLINT 有符號的範圍是-32768到32767,無符號的範圍是0到65535。
MEDIUMINT 有符號的範圍是-8388608到8388607,無符號的範圍是0到16777215。
INT 有符號的範圍是-2147483648到2147483647,無符號的範圍是0到4294967295。
INTEGER INT的同義詞。
BIGINT 有符號的範圍是-9223372036854775808到 9223372036854775807,無符號的範圍是0到18446744073709551615。
FLOAT 單精密浮點數字。不能無符號。允許的值是-3.402823466E+38到- 1.175494351E-38,0 和1.175494351E-38到3.402823466E+38。
DOUBLE 雙精密)浮點數字。不能無符號。允許的值是- 1.7976931348623157E+308到-2.2250738585072014E-308、 0和2.2250738585072014E-308到1.7976931348623157E+308。
DOUBLE PRECISION DOUBLE的同義詞。
REAL DOUBLE的同義詞。
DECIMAL DECIMAL值的最大範圍與DOUBLE相同。
NUMERIC DECIMAL的同義詞。
DATE 日期。支援的範圍是'1000-01-01'到'9999-12-31'。
DATETIME 日期和時間組合。支援的範圍是'1000-01-01 00:00:00'到'9999-12-31 23:59:59'
TIMESTAMP 時間戳記。範圍是'1970-01-01 00:00:00'到2037年的某時。
TIME 一個時間。範圍是'-838:59:59'到'838:59:59'。
YEAR 2或4位數字格式的年(內定是4位)。允許的值是1901到2155。
CHAR 固定長度,1 ~ 255個字元。
VARCHAR 可變長度,1 ~ 255個字元。
TINYBLOB

TINYTEXT 最大長度為255(2^8-1)個字符。
MEDIUMBLOB

MEDIUMTEXT 最大長度為16777215(2^24-1)個字符。
LONGBLOB

LONGTEXT 最大長度為4294967295(2^32-1)個字符。
ENUM 一個ENUM最多能有65535不同的值。
SET 一個SET最多能有64個成員。

2008年3月21日星期五

MYSQL的語法

這是這一週休息為了巨匠電腦的網頁設計
有了下列的心得想法 我將MYSQL的語法放在BLOG供大家一同討論學習
1.SELECT * FROM table 查詢每資料表的所有欄位中的記錄
2.UPDATE table SET FILEDS = value 更新指定的欄位內容
3.INSERT INTO table (filed1,filed2,filed3,...,filedn) VALUES (value1,value2,value3,...,valuen) : 新增一筆記錄至某個資料表中
4.DELETE FROM table 刪除指定的資料

mysql 真的簡單 , 只要於上述語法後加入 where 條件則可進行指定的設計
1.SELECT * FROM table WHERE name = 'alex'

2008年3月17日星期一

asp 傳送資料

今天執行ASP的資料傳輸設計
發現<% aa.bb.value %>
是不可以執行的
使用者需要使用
<% respone write aa.bb.value %>
簡單又好用喔

2008年2月14日星期四

資料庫的問答很管用喔 - ACCESS

大家好這是我最近找到的一些問題 , 我想對大家會有少許幫助喔
您可以按一下到原始網站 , 或是在下面找找有沒有可以解決您的問題的相關知識喔

Q: 因為資料庫的資料皆十分隱密性,請問該如何讓其他使用者無法變更或複製
A: 請設定"工具-保全-使用者及群組的權限"

Q: 篩選了資料記錄後,希望資料工作表檢視顯示出所有資料記錄,請問如何做
A: 在RECORD | APPLY FILER/SORT (EGNLISH VERSION)菜單下,你可以找到恢復所有記錄的MENU

Q: access文字欄位內容長度有無限制
A: 使用文字就只有50個字元的限制,而備忘則無

Q: 資料表設計模式及資料工作表模式,兩者有何不同
A: 簡單來說設計模式就是您可以在其中針對您的資料表做欄位的設定,而資料工作表則是輸入資料的模式

Q: 如何建立單一參數查詢
A: 在您想要用來當作參數的準則儲存格中輸入提示,並以方括號括住提示。例如: <[請輸入查詢姓名:]


Q: 如何使用Access 的指令行參數
A: 例如:下列的指令列會啟動Microsoft Access並開啟獨佔式存取的 我的資料 "C:\Program Files\Microsoft Office\Office\MSAccess.exe" "C:\Program Files\Microsoft Office\Office10\Samples\MYDATA.mdb" /excl

Q: 如何在access中建立樞杻分析表表單
A: 1. 在資料頁的設計檢視中,按一下工具列的"工具箱"
2. 在工具箱中,按一下"Office樞紐分析表"工具
3. 在資料頁中按一下控制項的右上角所要放的位置
4. 選擇資料樞紐分析表清單的資料來源
5. 自訂版面配置


Q: 在access設定主索引有無任何限制
A: 沒有什麼限制在

Q: 如何清除篩選條件
A: 1. 選定您要刪除篩選的表單
2. 切換到進階篩選/排序視窗
3. 在編輯功能表中,按一下清除格線 **記得在動作完成後按一下工具列的"應用篩選"

Q: 當 access 檔案愈來愈大,查詢速度亦變慢,該怎麼辦
A: 建議您可由工具列上之[工具]/[資料庫公用程式]/[壓縮及修復資料庫],來減少您檔案之大小

Q: Access可否編譯成*.exe如何做呢
A: 不可以



Q: asp如何下語法寫資料連線
A: Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\xxx.mdb;Persist Security Info=False
此處的xxx.mdb 為Access檔案名稱

Q: 資料量過多會出現影響開啟Access的速度這種情況嗎?有方法可改進嗎
A: 建議由工具列上之[工具]/[資料庫公用程式]/[壓縮及修復資料庫],來減少您檔案之大小

Q: 如何將多筆TXT檔同時匯入access
A: 用VBA編程: DoCmd.TransferText


Q: 如何自訂切換表單
A: 建議使用切換表單 管理員。
1.在 [工具] 功能表中,指向 [資料庫公用程式],然後請按一下 [切換表單管理員]。
2.如果 Microsoft Access 問是否你要建立切換表單,請按一下 [是]。
3.在 [切換表單管理員] 對話方塊中,按一下 [編輯]。
4.在 [編輯切換表單頁] 對話方塊中,在 [切換表單名稱] 方塊中輸入切換表單的名 稱,然後請按一下 [新增]。
5.在 [編輯切換表單項目] 對話方塊中,文字方塊中,輸入第一個切換表單按鈕的文 字,然後請按一下在指令方塊中的指令。例如,在文字方塊中輸入重新檢視產品,然後 在指令方塊中按一下 [在編輯模式下開啟表單]。
6.取決您按的指令,Microsoft Access 會在指令方塊下面顯示另一方塊。如果有需 要,在此方塊中按一下項目。例如,如果您在步驟 5 的指令方塊中按一下 [在編輯模 式下開啟表單],則在表單方塊中請按一下您要開啟的表單名稱,例如重新檢視產品。 然後請按一下 [確定]。
7.重複步驟 4 至 6 直到您已新增加全部的項目至切換表單中。如果您要編輯或刪除項 目,請在切換表單方塊中按一下 [此切換表單的項目],然後按一下 [編輯] 或 [刪 除]。如果您要重新安排項目,請按一下在方塊中的項目,然後請按一下 [上移] 或 [下移]。

Q: access如何設定可以同時間處理數個資料庫呢
A: 不可以,但你可以LINK到多個數據庫


Q: database一定要設定主索引嗎
A: 不一定要設定主索引,但是若有設定主索引,則查詢該主索引欄位資料時,效能會比較好

Q: Access 2000一個tabel有無規定可放多少筆data
A: 2 gigabyte minus the space needed for the system objects

Q: 什麼是 inpurt mask
A: [inpurt mask]即[輸入遮罩],您可透過此功能,來控制使用者輸入資料之格式

Q: access壓縮是必要的嗎
A: 因Access效能與本身資料庫之大小有關,建議您不定時依資料大小進行壓縮,則有利於您運作之效率,另提醒您平日應作好備份動作,以防萬一

Q: access和sql最大差別在於
A: ACCESS用于個人和小型公司需求 SQL用於企業級公司的需求

Q: 一開啟Access檔令其執行巨集,如何設定
A: 請使用AutoExec macro,命名AutoExec


Q: 用access 2000自動產生每日資料表,目前已有3000多筆資料了,但只要保留中間100~500筆資料,該如何做最快不用一筆一筆delete
A: 請於查詢中執行SQL指令,如: Delete 每日資料表 where 日期 < #2003/6/17#


Q: 我有兩個資料表欄位完全相同,該如何合併成一個資料表
A: 開啟第一個資料表選取所有資料列,再執行編輯/複製,然後開啟第二個資料表,選取最後一列(新增資料列),再執行編輯/貼上 ,則第二個資料表即是合併兩個資料表的結果了


Q: Access中,如何利用 ODBC 來連接外部資料庫
A: 先設定好 ODBC 欲連接的資料來源(如:SQL Server, Oracle...),再於 Access資料表物件中執行連結資料表作業,選取你要的資料表即可

Q: 在Access內如何做才能開啟OLE中的檔案
A: 您所指的OLE中檔案是指何種類型呢?而該檔案是否正處於執行中呢?而您是要透過何種方式來取得資源


Q: 如何做以查詢A欄位(文字型態),有2個bytes以上的資料
A: 於查詢欄位中輸入 Expr1: Len([A欄位]),再於準則中輸入> 2 即可

Q: 可否在查詢中以生日算出年齡,請問在access中有何指令可辦到
A: 於查詢欄位中輸入: Year(Date())-Year([生日])

2008年1月27日星期日

查詢篇【刪除】-ACCESS

1. 選取查詢【檢視】 / 選取 新增 鈕
2. 選取 設計檢視【清單項目】/ 選取 確定 鈕
3. 選取需要的資料表或查詢表 / 選取 新增 鈕
4. 選取 關閉 鈕
5. 選取需要的欄位【按二下該欄位名稱】
6. 選取查詢【功能表】/ 選取刪除查詢【清單】
7. 設定需要刪除的條件
8. 選取儲存檔案鈕 / 選取執行鈕

2008年1月7日星期一

巨集指令:資料篩選-access

1. 選取巨集【類別】 / 選取新增 鈕
2. 選取檢視【功能表】/ 巨集名稱【清單】
3. 輸入巨集名稱 / 設定巨集指令 / 設定指令參數
4. 儲存檔案【如:篩選】
設定事件內容
名稱 條件 指令 Where 條件
篩選 [群組名稱]=1 ApplyFilter [欄位名稱]="篩選內容"
[群組名稱]=2 ApplyFilter [欄位名稱]="篩選內容"
[群組名稱]=0 RunComand 移除篩選 / 排序
5. 建立表單 / 選擇選項群
6. 輸入選項內容 / 設定預設值
7. 設定選項數值 / 設定其他項目內容直到完成

巨集指令:去除空白 - access

1. 選取巨集【類別】 / 選取新增 鈕
2. 選取檢視【功能表】/ 巨集名稱【清單】
3. 輸入巨集名稱 / 設定巨集指令 / 設定指令參數
4. 儲存檔案
巨集指令內容如下:

名稱 指令 參數
去除空白 SetValue 項目 運算式
[欄位名稱] Trim([欄位名稱])

註:欄位名稱為現有的欄位。如:姓名
5. 選擇表單 / 選擇表單內的文字方塊欄位
設定事件內容

事件 名稱 指令
After Update 巨集 . 不留白

2008年1月6日星期日

巨集指令:RunCommand - ACCESS

1. 選取巨集【類別】 / 選取新增 鈕

2. 選取檢視【功能表】/ 巨集名稱【清單】
3. 輸入巨集名稱 / 設定巨集指令 / 設定指令參數
4. 儲存檔案
巨集指令內容如下:

名稱 指令 參數【指令】
新增 RunCommand 記錄新增一筆
復原 RunCommand 復原
刪除 RunCommand 刪除記錄
上一筆 RunCommand 記錄前一筆

註:以上可以共同儲存於一個巨集名稱內

 
妹咕數位學園歡迎網友們來信指教 妹咕信箱