08 September 2009

Brainstorm for FYP part 1


Assalamulaikum wbt..

aku xtaw nk watpe hari nie..even dok opis+software still lum siap..tp otak aku cm kurang minyak RON 95 la plak..beberapa minggu lepas aku nmpak shoutout FB ex-grup java (once upon a time..zzz)..Goh Kai Sin name beliau..duie tulih - brainstorm FYP..bla bla bla..headache..bla bla bla..pe ntah lagi..aku pn xbaper igt..since die pn dh stat, sku pn nk stat gak ar..firasat aku kuat mengatakan y dorag ni (chinoose2 sekalian) cm akn come out ngn smthing superb..myb pas abih LI nie, mkin byk laa y tw C#..xcam dlu ms taun 2..selain aku, da la xlebih 10 org y tw C# nih (include chinoos)..tu ar..mkin byk enemy la jwb nye..

26 August 2009

C# and database part 3

Assalamulaikum wbt..



entry y lepas aku dh explain line by line cmane bentuk C# bile wat database connection..itu hanya sedikit shj dri keseluruhan tutorial nie..kalu korang perasan, code y aku tnjukkan hanya utk RETRIEVE dri database sahaja..ofkos menggunakan "Select" statement..xda perubahan kat database..so..skang, aku nk tunjuk cmana nk execute command y melibatkan sebarang perubahan kepada database..

ok..before aku go any further..ade 3 jenis execute command y kite bleh gune bile deal ngn database iaitu ExecuteNonQuery,ExecuteScalar and ExecuteReader..ape beze antara ketiga2 execute command ni? untuk lebih memudahkan fahaman ajaran ni, aku explain dri y plig kecik ke plig besar

ExecuteReader digunakan utk read or retrieve dri databse..nama pun reader kn..kite xleh wat insert, update or delete statement gune command nie..hanya utk select statement sahaja..ape y istimewanya command nie adalah ia nya less burden pd databse kite utk handle query..juz read byte of stream and pass it back..

Next, ExecuteScalar..command nie hanya akan return 1 value shj..igt!..1 value sahaja..aku jarang gune ExecuteReader actually, most of the time aku akn gune ExecuteScalar nie..kenapa nk return 1 value? best gak soklan tue..ok..situasi nye cmni..letsay korang ader byk record dlm database ( beratus kot)..n then korang nk retrieve braper total record y dh ade dlm database..haa kat sini la kite bleh gune ExecuteScalar..gune select count statement, then pass kat ExecuteScalar..die akn return balik 1 value..iaitu total record y kite ader..cmtu la kegunaan nya..ia bkn hanya utk kire total record..tp apa2 SQL statement y hanya akn return 1 value jer..menjimatkan ms+stamina databse kite utk handle..

Next please...k now ExecuteNonQuery..nie option y plig las y kite ade bile nk execute command to databse..command nie khas utk SQL statement y melibatkan perubahan kepada database cm INSERT,UPDATE,DELETE and soon la..ape y kite wat ialah pass SQL statement kite kepada ExecuteNonQuery n bia die setelkan..then korang tgk databse, mesti dh insert..

Next entry akn aku tnjukkan how to write the code n hopefully korang leh follow lah yerk..Stakat nie.korang faham y nie jer dlu k..jgn dok pening2..haha

24 August 2009

C# and database part 2

Assalamulaikum wbt..

entry lepas aku da post sal cmane nk gne C# utk connect to any database..entry kali nie utk aku terangan line by line programming code y crucial pd sesape y nk follow..mksure korang dh bace entry sebelom nie utk prevent otak kite dri terlalu sasau..

before aku pg lebih jauh..nk terang ckit sal database connection. Da 2 mode utk connect to database (xkire apa language pn y korang gune)..Pertama, always connect n y kedua, temporary connect..Option nie depend on what software architecture y kite impliment. "Always connect" memerlukan apps kte utk open connection to database (n hold dat particular connection) from start up till user tekan exit button..keep in mind, one enterprise database server can only hold up to 24 simultaneous connection (kalu personal lgi la kurang)..suggestion aku, gune option kedua iaitu "temporary connect"..means apps xperlukan databse connection utk run from startup till da end, tp hanya open connection bile perlukan access ke databse shj, then close blik connection..itu shj..cara ni lagi menjimatkn dn mengelakkan server dri overload utk handle sumer databse request..cube bayangkan kalu server syok.org gune option y pertama, maka xdpt la kite nk download citer District 9 mlm nie..ekekeke..so, explaination y seterusnya hanya fokus kepada option y kedua td ok..(leh follow x ni?)

MS SQL Server version:

using System.Data.SqlClient //line 1
.
......(smthing constructor kat sini)........
.
.
private void retrieveData()
{

string connectionString = "Server=myServerAddress; Database=myDataBase; UserID=myUsername; Password=myPassword;"; //line 2

SqlConnection conn = new SqlConnection(connectionString); //line 3
Conn.Open(); //line 4

string selectStatement = "select something from someTable where someID = 1": //line 5
SqlCommand command = new SqlCommand(selectStatement, conn); //line 6
SqlDataAdapter da = new SqlDataAdapter(selectStatement,conn); //line 7

DataSet ds = new DataSet; //line 8
da.Fill(ds); //line 9

conn.Close(); //line 10
}


line 1 -- letak referrence kpd database client y kite nk gne. depend what type of databse ykite gune.

line 2 -- initialize 1 connection string, letak la username n password sumer tue..string nie mmg da semicolon y byk, coz string nie akn kite pass kat databse client td utk die split2 kn blik n casting them to respective variables.

line 3 -- initialize 1 database connection handler (in my case, conn)..mksure letak connction string dlm parameter connection handler nie td..kalu x, die xtaw nk gne connection ape..

line 4 -- gne connection handler td, open connection to database.

line 5 -- cm bese, letak la query ape y korag nk wat dlm bntuk 1 string..xksah la pnjag mane, tp mksure sql query tue btul syntax nye.

line 6 -- initialize 1 comand handler. Fungsi die adalah sebagai tukang "execute"kan query kite td. Tanpa die, sapa la query kite.Dlm parameter die, mksure letak skali string query y kite nk gune, n connection handler y die nk pakai..then die akn execute query tue thru connection y kiter dh open td (conn.Open())

line 7 -- Pe fungsi data adapter nie? fungsi die adalah sebagai orag tengah utk simpan data y kite execute td secara temporary..mksure parameter y digunakan exactly same as command handler td..

line 8 -- initialize 1 data structure or container utk receive data tue td..data structure may be vary, korag leh gune string, array, variable, data table, dataset and soon..in my case, data set..

line 9 -- pgil org tengah y hold data temporary td ( data adapter )...suh die "fill" data y die receive dri database tue ke dlm data structure kite td iaitu data set..

line 10 -- lastly, don poget to close da connection..

itu la sahaja penerangan die..pening? itulah die the best part about programming..hahaha

da soklan? bek tanye..rugi x tanye

20 August 2009

C# and database sending and receiving

Assalamulaikum wbt..

Aaa akhir nya da la orang tanye soklan2 programming nie..dh lame aku tunggu2 soklan2 y mencabar minda cmni..tahnah kepada amar kerana memberi aku nafas baru dlm bidang penulisan blog y penuh dengan mehnah dan tribulasi ini..hehe..

Ok, seperti mauduk y tertera di atas, aku akn terangkn serba sedikit tentang cemana nk connect ke database secara programmatically thru C#..xksah ape platform, either windows form application, ASP.NET, WPF or silverlight, sumer same jerr..tp da sdikit perubahan bile integrate ngn WCF technology (xper, nanti aku terangkn kalu sempat)..coz WCF adalah 1 platform len y focus utk data sending or receiving xkire ke database, server or mobile phone..tp sume platform2 ni adalah utk .Net Framework 2.0 dan ke atas sahaja..dun wory, basically majority semua VS related SDK skg dh compliment ngn framework nie.

first, kite kne tw ape database y kite nk gune. Bleh gne MS SQL Server, MySQL, Oracle, Access n len2..bnde ni amat penting utk kite tw ape function y kite nk gne nanti..Regardless ape jenis database pn y korang gne, setiap connection thru database mesti gne basic structure or step y akn aku terangkn nanti.Yang bezanya hanya nama function jer..hehe

basic step utk connect database:

1 - add system referrence mengikut database ape y kite gne
2 - initialize 1 connection string
3 - initialize database connection handler
4 - passing connection string kepad aconnection handler as a parameter.
5 - Open connection
6 - initialize database command handler
7 - wat query dlm bntuk string
8 - passing string query + connection handler td kepada command handler as a parameter.
9 - execute query
10 - close connection

thats all..senang kn..hehe

skg aku tnjuk 2 contoh dri 2 database berbeze, MS SQL Server n MySQL cemana nk RETRIEVE data dri database.

MS SQL Server version:

using System.Data.SqlClient
.
......(smthing constructor kat sini)........
.
.
private void retrieveData()
{

string connectionString = "Server=myServerAddress; Database=myDataBase;UserID=myUsername; Password=myPassword;";

SqlConnection conn = new SqlConnection(connectionString);
Conn.Open();

string selectStatement = "select something from someTable where someID = 1":
SqlCommand command = new SqlCommand(selectStatement, conn);
SqlDataAdapter da = new SqlDataAdapter(selectStatement,conn);

DataSet ds = new DataSet;
da.Fill(ds);

conn.Close();
}

MySQL version:

using MySql.Client;
.
......(smthing constructor kat sini)........
.
.
private void retrieveData()
{

string connectionString = "Server=myServerAddress; Database=myDataBase;UserID=myUsername; Password=myPassword;";

MySqlConnection conn = new MySqlConnection(connectionString);
Conn.Open();

string selectStatement = "select something from someTable where someID = 1":
MySqlCommand command = new MySqlCommand(selectStatement, conn);
MySqlDataAdapter da = new MySqlDataAdapter(selectStatement,conn);

DataSet ds = new DataSet;
da.Fill(ds);

conn.Close();
}

Camtu la ceritanya utk basc retrieving dri database. Kalu korang perasan, antara dua contoh y aku tnjuk ni, xder beza pn, step still sama, cume beza hanya pd nama function shj..perati btul2 k..wat ms nie, tgk y nie jer dlu..bagi intro jer ckit..next post, aku akn terangkn line by line code y aku tulih nie..supaya memudahkan korang faham+develop foudation dlu.

k, any soklan, sila2 la tanye..

17 August 2009

Assalamulaikum wbt..

sori pasal entry lepas y agak emo..hehe..ape pun..tu hanya pndapat aku..y aku kluarkan berdsarkan persepsi kaca mata aku je..hope sesape y bace leh mula mengorak lgkah n jadi orag y beriltizam utk berjaya lagi pasni..actually aku cm dh mlas nk post entry2 y cm programming..bkn ape, complicated+susah nk explain dgn hnya menulis perkataan2..so..aku rse bter blog nie jd tmpat diari aku instead of blog tutorial..



semalam hari ahad, hari y sgt2 boring utk aku..ronda2 kat tenet terjumpalah Silverlight 3 nie..skg dh version 3 dh..aku punye expression blend pn bru version 1 je..lama dh tertinggal upanya..aku xtry lagi bnde nie..almaklumla, hari dok maen ngn WPF jer..smpai xder ksempatan nk try silverlight..tp aku dh la start lagkah2 berpindah ke platform silverlight..download video tutorial+source code..bile nk nengok pn aku xtaw..FYI, silverlight nie 1 user control aka plugin..sama cm php based web site tp da flash embed kat situ..aku pn xleh la nk citer lebih2..xtry pn lagi kan..

kereta idaman kalbuku=)


aku igt nk bli motor lagi 1 la..sape stuju?? dlu dh bli dh, kogsi duit ngn kakak aku je pn..tp aku bg mak aku pakai..kalu bwak p Usm nti alamat nye mak aku xbermotor la jwb nye..hmm..duit ader dh..tp bile pk blik..cm mlas jer..bkn ape..kekadang terpikir gak..ape efek nye kat stadi aku kalu aku da motor ngn xder motor?..cm xder jer..mkin kuat jalan ade la kot..so xyah laa bli motor yazid oii..kumpul duit hntaran lg bek..hehe

aku xtaw nk tulih ape lgi..xder ker sesape y nk tanye aku sal C# ker, socket programming ker, network ker..at least da la jgak bahan utk aku ngomel2 kat sni..

zzzzzzz.....