Topic: 
 

บันทึกความผิดพลาดของการใช้คำสั่ง SQL

  • เวลาต้องการตรวจแค่ว่าเรคคอร์ดนั้นมีข้อมูลหรือไม่
    • เดิมใช้ SELECT abc FROM ... WHERE ...
    • ควรใช้ SELECT 1 FROM ... WHERE ...
  • เหมือนข้อแรก แต่ถ้ามีจำนวนเรคคอร์ดมาก ต้องเติม LIMIT 1 เข้าไปด้วย มิฉะนั้นจะทำให้ช้ามาก
    • เดิมใช้ SELECT 1 FROM ... WHERE ...
    • ควรใช้ SELECT 1 FROM ... WHERE ... LIMIT 1
 

Full Text Search เป็นเทคนิกการค้นหาคำที่ต้องการในเอกสารหน้าใหญ่ ๆ
ระบบฐานข้อมูลของ MySQL มีให้มาเลย แต่เห็นเขาว่าช้า
ส่วน Postgresql ไม่มีฟังก์ชั่นนี้มาให้ จำเป็นต้องติดตั้งเพิ่มเข้าไปเอง โมดูลนี้ชื่อว่า tsearch2
ซึ่งมีวิธีการติดตั้งและใช้งานที่ยุ่งยากพอควร

Topic: 
 

ดัดแปลงโค๊ดมาจาก programming is hard: isThai and ThaiWarp function

import PyICU

def isThai(chr):
    cVal = ord(chr)
    if(cVal >= 3584 and cVal <= 3711):
        return True

    return False

def wrap(txt):
  txt = PyICU.UnicodeString(txt)
  bd = PyICU.BreakIterator.createWordInstance(PyICU.Locale("th"))
  bd.setText(txt)   
  lastPos = bd.first()
  retTxt = PyICU.UnicodeString("")
  txt_list = []
  try:
    while(1):
      currentPos = bd.next()
      retTxt += txt[lastPos:currentPos]
Topic: 
 

บันทึกติดตั้ง PyICU บนเดเบียน Etch ใช้ Python รุ่น 2.4

จะลองเอามาทำตัวตัดคำไทย เพื่อจัดเก็บคำในฐานข้อมูล
ครั้งแรกที่ทดลอง ได้นำเอาไบนารีมาติดตั้ง แต่รันไม่ได้เพราะเกิดข้อผิดพลาดเกี่ยวกับยูนิโค๊ด จึงต้องเอาซอร์สมาคอมไพล์เอง

ติดตั้งแพกเกจที่จำเป็น
# aptitude install python2.4-dev libicu36 libicu36-dev

ดาวน์โหลดซอร์ส และแตกไฟล์
# cd /usr/src
# wget http://downloads.osafoundation.org/PyICU/src/PyICU-src-0.6.tar.gz

Topic: 
 

ทำตัวอย่างการค้นเนื้อหาไพธอน (20%)

เสร็จประมาณ 10% แล้ว
อยากให้ทำงานได้แบบ php help จัง

update

50-03-02
  • ทำต้นแบบตัวค้นหาแบบแยกคำเสร็จ ทดลองค้นคำได้แล้ว แต่ผลการค้นยังแย่อยู่
  • ทดลองเขียนการแสดงผลใหม่ แบบแยกเทมเพลต โดยใช้แท็ก <?py ... ?>
50-03-12
ทำ comment เสร็จแบบหยาบ ๆ
50-03-14 ได้สัก 20%
เริ่มโพสต์ comment แทรกตามเนื้อหา

Pages

Subscribe to ThaiTux.info RSS