In principal, despre .NET, VB6. C#,VB.NET, ASP.NET Apoi despre programare si multe alte chestii ... de programare.

Subscribe RSS   Mini tools List

joi, martie 20, 2008

2 carti de sql 2005 , free ,de la red gate
Va rog sa folositi acest URL NOU de la
http://serviciipeweb.ro/iafblog/

Download aici
http://www.red-gate.com/specials/Ebooks/March_offer2.htm?utm_source=simpletalk&utm_medium=email&utm_content=maketime2-20080317&utm_campaign=sqltoolbelt
Desi sunt de 2005,Database Design and Optimization ramine un subiect fierbinte

Post page: http://serviciipeweb.ro/iafblog/2008/03/20/2+Carti+De+Sql+2005+Free+De+La+Red+Gate.aspx

Weblog post by 'admin' on ' 2 carti de sql 2005 , free ,de la red gate'

Categories:programare;sql

miercuri, martie 19, 2008

Phrenetic Phoughts
Va rog sa folositi acest URL NOU de la
http://serviciipeweb.ro/iafblog/

O carte interesanta, despre multe experiente in IT , a lui Phil Factor:
The Phrenetic Phoughts of Phil Factor: Confessions of an IT Manager -de gasit pe Lulu  la  http://www.lulu.com/content/573311

Merita citita (poate fi downloadata de aici  , dupa inscrierea pe mailing list)

Cel mai mult mi-a placut povestea despre IT Manager-ul care nu avea nici o idee despre IT - si decaderea departamentului ...dupa ce a invatat ca rezolvarea problemei este software-ul "X"

Post page: http://serviciipeweb.ro/iafblog/2008/03/19/Phrenetic+Phoughts.aspx

Weblog post by 'admin' on 'Phrenetic Phoughts'

Categories:carti;programare

sâmbătă, martie 15, 2008

Weblog pingback by 'http://tubepornoss.com' on 'Programare in .NET 3.5'
Va rog sa folositi acest URL NOU de la
http://serviciipeweb.ro/iafblog/

You were pinged back by
http://tubepornoss.com
on your weblog entry 'Programare in .NET 3.5'
(http://serviciipeweb.ro/iafblog/2008/02/05/Programare+In+NET+35.aspx

Delete Trackback: http://serviciipeweb.ro/iafblog/deleteItem.ashx?entryid=1e3fce76-b1f4-44fa-bab8-03922db9f0e4&referralPermalink=http://tubepornoss.com&type=Pingback)

Weblog pingback by 'http://yesihavemoneyy.com' on 'Programare in .NET 3.5'
Va rog sa folositi acest URL NOU de la
http://serviciipeweb.ro/iafblog/

You were pinged back by
http://yesihavemoneyy.com
on your weblog entry 'Programare in .NET 3.5'
(http://serviciipeweb.ro/iafblog/2008/02/05/Programare+In+NET+35.aspx

Delete Trackback: http://serviciipeweb.ro/iafblog/deleteItem.ashx?entryid=1e3fce76-b1f4-44fa-bab8-03922db9f0e4&referralPermalink=http://yesihavemoneyy.com&type=Pingback)

Weblog pingback by 'http://realvideopornoo.com' on 'Programare in .NET 3.5'
Va rog sa folositi acest URL NOU de la
http://serviciipeweb.ro/iafblog/

You were pinged back by
http://realvideopornoo.com
on your weblog entry 'Programare in .NET 3.5'
(http://serviciipeweb.ro/iafblog/2008/02/05/Programare+In+NET+35.aspx

Delete Trackback: http://serviciipeweb.ro/iafblog/deleteItem.ashx?entryid=1e3fce76-b1f4-44fa-bab8-03922db9f0e4&referralPermalink=http://realvideopornoo.com&type=Pingback)

Weblog pingback by 'http://yesihavemoneyy.com' on 'Programare in .NET 3.5'
Va rog sa folositi acest URL NOU de la
http://serviciipeweb.ro/iafblog/

You were pinged back by
http://yesihavemoneyy.com
on your weblog entry 'Programare in .NET 3.5'
(http://serviciipeweb.ro/iafblog/2008/02/05/Programare+In+NET+35.aspx

Delete Trackback: http://serviciipeweb.ro/iafblog/deleteItem.ashx?entryid=1e3fce76-b1f4-44fa-bab8-03922db9f0e4&referralPermalink=http://yesihavemoneyy.com&type=Pingback)

marți, martie 11, 2008

linked server cu postgresql
Va rog sa folositi acest URL NOU de la
http://serviciipeweb.ro/iafblog/


M-am chinuit sa fac import din PostgreSQL in SQL Server.

  • Prima idee :
un linked server cu PostgreSQL
Am incercat cu un driver de ODBC https://projects.commandprompt.com/public/odbcng/attachment/wiki/Downloads/mODBC_Installer(beta_00.99.121).msi?format=raw
si cu un driver de OLEDB
http://pgfoundry.org/frs/download.php/865/PgOleDb-1.0.0.20.zip

Deschizind Linked server,cel de OLEDB dadea eroare ca provider-ul nu era initializat, celalalt (ODBC)lista o gramada de BD cu aceeasi denumire...


  • A doua idee :
Import/Export din PostgreSQL prin DataTable si DataAdapter in SQL Server prin C#
Driver :http://pgfoundry.org/projects/npgsql

Eroare :
This stream does not support seek operations.
Tot citind pe internet despre eroarea asta... am vazut ca nu poate fi reparata ...

  • A treia idee :
Am reusit, pina la urma, cu driver-ul de ODBC, un DSN si un import table in Access, apoi Export/Import cu SQL Server ...

Concluzia:
Nu exista cai bune sau rele - exista tool-uri care merg !


Post page: http://serviciipeweb.ro/iafblog/2008/03/11/linked+Server+Cu+Postgresql.aspx

Weblog post by 'admin' on 'linked server cu postgresql'

Categories:programare;sql

duminică, martie 09, 2008

Interceptarea erorilor in .NET 2.0
Va rog sa folositi acest URL NOU de la
http://serviciipeweb.ro/iafblog/

Am pornit o discutie pe RONUA, impins de nevoiea de a-mi consolida ideea de metoda de interceptare a erorilor
E interesant de urmarit (pentru cine stie .NET si nu numai ... ) intreaga discutie ( care inca nu s-a terminat...) .Mie mi-a placut replica lui Cryogenic



Post page: http://serviciipeweb.ro/iafblog/2008/03/09/Interceptarea+Erorilor+In+NET+20.aspx

Weblog post by 'admin' on 'Interceptarea erorilor in .NET 2.0'

Categories:.NET;erori;programare

vineri, martie 07, 2008

Addins for Firefox
Va rog sa folositi acest URL NOU de la
http://serviciipeweb.ro/iafblog/

Ce add-in-uri de firefox folosesc


Nume addin Mozilla

Detalii

 Copy Plain Text 0.3.3

 

 

    http://mozmonkey.com/

 De copiat doar text

    Firefox 0.7

 

    Copies text without formatting

 DOM Inspector 1.8.1.12

 

 

    http://www.mozilla.org/projects/inspector/

 

    Firefox 2.0.0.12

 

    Inspects the structure and properties of a window and its contents.

 Download Statusbar 0.9.6

 

 

    http://downloadstatusbar.mozdev.org/

 Ca sa vezi download-urile

    Firefox 2.0

 

    View and manage downloads from a tidy statusbar

 Extension List Dumper 1.13.0

 

 

    http://sogame.awardspace.com/

Ca sa obtii aceasta lista – Tools=> addons=> Dump list

    Firefox 1.5

 

    Dumps a list of the installed extensions.

 FFClickOnce 0.6

 

 

    http://www.softwarepunk.com/ffclickonce/

Pentru instalare Click Once

    Firefox 1.5

 

    Allows Firefox to run .NET ClickOnce applications.

 Firebug 1.05

 

 

    http://www.getfirebug.com/

Pentru web development

    Firefox 1.5

 

    Web Development Evolved

 Forecastfox 0.9.6

 

 

    http://forecastfox.mozdev.org/

Pentru vremea din Bucuresti

    Firefox 1.5

 

    Get international weather forecasts and display it in any toolbar or statusbar with this highly customizable extension.

 Google Browser Sync 1.3.20070523.0

 

 

    http://www.google.com/tools/firefox/browsersync/

Pentru sincronizare de Bookmarks

    Firefox 1.5.0

 

    Synchronize settings between browsers

 Google Notebook 1.0.0.19

 

 

    http://www.google.com/notebook

Pentru note rapide, folositi clip

    Firefox 1.5

 

    Allows notetaking while browsing

 ScribeFire 1.4.6

 

 

    http://www.scribefire.com/

Pentru postat pe blog (merge cu multe blog-uri, inclusive cu dasblog)

    Firefox 1.5

 

    A full featured blog editor that integrates with your browser and lets you easily post to your blog.

 StumbleUpon 3.16

 

 

    http://www.stumbleupon.com/

Pentru site-uri

    Firefox 1.0

 

    StumbleUpon Toolbar

 TinyUrl Creator 1.0.4

 

 

    http://mozmonkey.com/

Pentru url-uri mici

    Firefox 1.5

 

    Convenient tool to create small url redirects from longer ones.

 Web Developer 1.1.4

 

 

    http://chrispederick.com/work/webdeveloper

 

Pentru dezvoltare web

    Firefox 1.0

 

    Adds a menu and a toolbar with various web developer tools.

 Acest post a fost postat cu ajutorul ScribeFire

Post page: http://serviciipeweb.ro/iafblog/2008/03/07/Addins+For+Firefox.aspx

Weblog post by 'admin' on 'Addins for Firefox'

Categories:addin;programare;proprii;usual tools

miercuri, martie 05, 2008

Stumble upon si scuze tuturor – sau cum am spamat o lume ...
Va rog sa folositi acest URL NOU de la
http://serviciipeweb.ro/iafblog/

Azi m-am inregistrat pe stumble upon si dupa inregistrare, mi-a dat o pagina frumoasa :am zis sa vad care din cunostinte sunt acolo.

OK – i-am dat parola de yahoo – si s-a conectat ... Ce nu am observat a fost ca , linga mesajul :

Invite these 815 friends to join StumbleUpon (Please don't invite mail lists, nobody likes spam)

era un checkbox "check-uit" – desi toate celelalte check-uri pentru numele prietenilor nu sunt.

Asa ca, din neatentie , am spamat o gramada de lume. Ii inteleg ca vor cit mai multi utilizatori – dar metoda mi se pare un pic trasa de par.

Nu mai spun ca nu au mesaj de confirmarea inregistrarii ...

Primul punct slab –desi conceptul de site pare ok.

Si imi cer scuze la toata lumea la care am trimis email ( sxa trimit un email de scuze e nashpa ...)

Post page: http://serviciipeweb.ro/iafblog/2008/03/05/Stumble+Upon+Si+Scuze+Tuturor+Sau+Cum+Am+Spamat+O+Lume.aspx

Weblog post by 'admin' on 'Stumble upon si scuze tuturor – sau cum am spamat o lume ...'

Categories:programare;proprii

Weblog trackback by 'http://serviciipeweb.ro/iafblog/2008/03/04/Al+Patrulea+Pas+Importul+Datelor.aspx' on 'Programare in .NET 3.5'
Va rog sa folositi acest URL NOU de la
http://serviciipeweb.ro/iafblog/

You were tracked back from
http://serviciipeweb.ro/iafblog/2008/03/04/Al+Patrulea+Pas+Importul+Datelor.aspx
on your weblog entry 'Programare in .NET 3.5'
(http://serviciipeweb.ro/iafblog/PermaLink,guid,1e3fce76-b1f4-44fa-bab8-03922db9f0e4.aspx

Delete Trackback: http://serviciipeweb.ro/iafblog/deleteItem.ashx?entryid=1e3fce76-b1f4-44fa-bab8-03922db9f0e4&referralPermalink=http://serviciipeweb.ro/iafblog/2008/03/04/Al+Patrulea+Pas+Importul+Datelor.aspx&type=Trackback)

Weblog trackback by 'http://serviciipeweb.ro/iafblog/2008/03/04/Al+Patrulea+Pas+Importul+Datelor.aspx' on 'Programare in .NET 3.5'
Va rog sa folositi acest URL NOU de la
http://serviciipeweb.ro/iafblog/

You were tracked back from
http://serviciipeweb.ro/iafblog/2008/03/04/Al+Patrulea+Pas+Importul+Datelor.aspx
on your weblog entry 'Programare in .NET 3.5'
(http://serviciipeweb.ro/iafblog/PermaLink,guid,1e3fce76-b1f4-44fa-bab8-03922db9f0e4.aspx

Delete Trackback: http://serviciipeweb.ro/iafblog/deleteItem.ashx?entryid=1e3fce76-b1f4-44fa-bab8-03922db9f0e4&referralPermalink=http://serviciipeweb.ro/iafblog/2008/03/04/Al+Patrulea+Pas+Importul+Datelor.aspx&type=Trackback)

Al patrulea pas : Importul datelor
Va rog sa folositi acest URL NOU de la
http://serviciipeweb.ro/iafblog/

Va sfatuim sa cititi partile anterioare

Primul pas : instalarea software-ului free

Al doilea pas : Analiza aplicatiei

Al treilea pas : Structura Bazei de date

Sau tutorialul anterior despre .NET 2.0

http://serviciipeweb.ro/iafblog/content/binary/tutorial.pdf

Vom importa datele din fisierul Excel in Baza de date. Daca am avea SQL Server Standard( sau mai mare) am putea importa direct din Excel in SQL Server.Este suficient sa facem click dreapta pe baza noastra de date , Tasks=> ImportData – ca in figura alaturata :

Dupa ce apasam, vom selecta la surse Excel:

Iar la destinatie serverul local de SQL Server

Cam asta ar fi, daca am avea SQL Server Standard.

Dar ,pentru ca avem SQL Server Express, nu avem o astfel de facilitate incorporata - asa ca va trebui sa ne descurcam importand datele cu un program in C#.

Vom creea tabele in SQL Server asemanatoare cu structura datelor din Excel. Vom crea tabelele asa cu am facut la pasul 3. De pilda tabela cu date despre cartile de copii va arata asa:

Acum vom importa datele. Va trebui sa facem citirea datelor in Excel si apoi scrierea lor in SQL Server.

Sa le luam pe rind:

Cream un nou proiect in C# , intitulat "ImportDate" de tip Consola in folder-ul C:\book3.

Linga toate "using" mai adaugam si un "using System.Data.OleDb;" ca sa putem citi din Excel si using System.Data.SqlClient pentru conectare la SQL Server.

O sa ne folosim de faptul ca DataAdapter stie sa faca modificari de date automat. Ne facem ca citim un DataTable din SQL Server, il umplem apoi cu datele de la Excel si ii spunem lui DataAdapter sa faca insert-urile pentru noi.

Deschidem o conexiune la SQL Server si citim datele din tabela "Excel_Copii":

Pentru citirea din Excel vom folosi driverul de OLEDB.Cream o conexiune la Excel si o sa citim datele din tabela "Copii".

Deschidem o conexiune la Excel

"Provider = \"Microsoft.Jet.OLEDB.4.0\";Data Source=\"C:\\book3\\carte.xls\";Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=1\"";

(daca vreti sa stiti ce ISAM aveti , vedeti cu regedit cheia

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\ISAM Formats)

Deschidem o noua comanda, prin care selectam datele din Worksheetul "Copii"

oc.CommandText = "select * from [Copii$]";

(de remarcat sintaxa cu $ si paranteze drepte)

Cod complet:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Data.OleDb;

using System.Data.SqlClient;

using System.Data;

namespace ImportDate

{

class Program

{

static void Main(string[] args)

{

using (SqlConnection sco = new SqlConnection())

{

sco.ConnectionString = "Data Source=.\\sqlExpress;Integrated Security=true;Initial Catalog=Library";

sco.Open();

using (SqlDataAdapter sda = new SqlDataAdapter("select * from Excel_Copii", sco))

{

// construct insert

if (sda.InsertCommand == null)

{

SqlCommandBuilder scb = new SqlCommandBuilder(sda);

sda.InsertCommand = scb.GetInsertCommand(true);

}

System.Data.DataTable dtTransfer = new System.Data.DataTable();

sda.Fill(dtTransfer);

using (OleDbConnection odc = new OleDbConnection())

{

odc.ConnectionString = "Provider = \"Microsoft.Jet.OLEDB.4.0\";Data Source=\"C:\\book3\\carte.xls\";Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=1\"";

odc.Open();

using (OleDbCommand oc = new OleDbCommand())

{

oc.CommandType = System.Data.CommandType.Text;

oc.CommandText = "select * from [Copii$]";

oc.Connection = odc;

//fill data table with Excel data

System.Data.DataTable dtExcel = new System.Data.DataTable();

using (OleDbDataReader sr = oc.ExecuteReader())

{

dtExcel.Load(sr);

}

// transfer rows

foreach (DataRow dr in dtExcel.Rows)

{

DataRow drNew = dtTransfer.NewRow();

drNew.ItemArray = dr.ItemArray;

dtTransfer.Rows.Add(drNew);

}

}

sda.Update(dtTransfer);

}

}

}

}

}

}

La fel se importa si datele din tabela de SF.

Acum este cazul sa importam datele in tabele.

Mai intii, cea de autori.

Va trebui sa luam autorii din toate tabelele .

SELECT

[Autor1] as autor

FROM [Library].[dbo].[Excel_Copii]

union

select [Autor2]

FROM [Library].[dbo].[Excel_Copii]

UNION

SELECT

[Autor1] as autor

FROM [Library].[dbo].[Excel_SF]

union

select [Autor2]

FROM [Library].[dbo].[Excel_SF]

Observam urmatoarele date:

NULL

ISPIRESCU Petre

Andersen

George Lucas

Ion Creanga

Isaac Asimov

Petre Ispirescu

Va trebui sa facem 2 lucruri:

  1. Consolidarea datelor – in definitiv, Petre Ispirescu = ISPIRESCU Petre
  2. Inserarea in tabela Person si Tabela Author

Punctul 1 este destul de usor de facut cu un update ...

update Excel_Copii set Autor1= 'Petre Ispirescu' where Autor1 = ' ISPIRESCU Petre'

Punctul 2 il vom face inserind in tabela de persoane si pe urma in tabela de Autori

INSERT INTO [Library].[dbo].[Person]

([FirstNamePerson],[LastNamePerson]

)

select autor,'' from

(

SELECT

[Autor1] as autor

FROM [Library].[dbo].[Excel_Copii]

union

select [Autor2]

FROM [Library].[dbo].[Excel_Copii]

UNION

SELECT

[Autor1] as autor

FROM [Library].[dbo].[Excel_SF]

union

select [Autor2]

FROM [Library].[dbo].[Excel_SF]

) a where a.autor is not null

Acum separam nume de prenume:

UPDATE

Person

SET

FirstNamePerson = substring(FirstNamePerson,1,charindex(' ' ,FirstNamePerson)-1),

LastNamePerson = substring(FirstNamePerson,charindex(' ' ,FirstNamePerson)+1,100)

WHERE charindex(' ' ,FirstNamePerson)>0

Rezultatul este:

IDPerson FirstNamePerson LastNamePerson DateOfBirthPerson

2 Andersen NULL

3 George Lucas NULL

4 Ion Creanga NULL

5 Isaac Asimov NULL

6 Petre Ispirescu NULL

Acum le vom insera in tabela de Autori:

INSERT INTO

[Author]

([IDPerson]

)

SELECT IDPerson FROM Person

La fel inseram cartile si editurile..

Acum trebuie sa refacem legaturile, de pilda, intre autori si carti

INSERT INTO [Book_Author]

([IDBook]

,[IDAuthor])

select IDBOOK,IDAuthor from Book b

inner join Excel_SF excel

inner join Person p on excel.Autor1 = p.FirstNamePerson + ' ' + p.LastNamePerson

inner join Author a on p.IDPerson = a.IDPerson

on excel.Titlu = b.Title

La fel si pentru carti cu edituri :

update book

set IDPrintingHouse =

p.IDPrintingHouse from Book b

inner join Excel_SF excel

inner join PrintingHouse p on p.NamePrintingHouse = excel.Editura

on excel.Titlu = b.Title

Ramine la latitudinea cititorului exercitiul cu celelalte update-uri.

Backupul la BD il gasiti in folder-ul database si se numeste "lib_date_importExcel.bak" . Puteti face restore.

De citit:

  1. Primul pas : instalarea software-ului free , in care downloadati VC# Express si SQL Server Express
  2. Stringuri de conexiune pentru orice baza de date : www.connectionstrings.com

Surse

Tutorial PDF

Post page: http://serviciipeweb.ro/iafblog/2008/03/04/Al+Patrulea+Pas+Importul+Datelor.aspx

Weblog post by 'admin' on 'Al patrulea pas : Importul datelor'

Categories:.NET;programare;tutoriale

duminică, martie 02, 2008

newslink pentru februarie 2008
Va rog sa folositi acest URL NOU de la
http://serviciipeweb.ro/iafblog/

Five Worlds - Joel on Software

 interesant de citit - si din perspectiva a cartilor citite

The top 10 dead (or dying) computer skills
No comment

List of portable software - Wikipedia,
en.wikipedia.org/wiki/List_of_portable_software
+ http://portableapps.com/
Pentru cei care au un USB flash in plus

How Much is Your Blog Worth | Dane Carlson's Business Opportunities Weblog

Si , in final, cit as lua (super teoretic) pe blog-ul meu


My blog is worth $2,258.16.
How much is your blog worth?

Post page: http://serviciipeweb.ro/iafblog/2008/03/02/newslink+Pentru+Februarie+2008.aspx

Weblog post by 'admin' on 'newslink pentru februarie 2008'

Categories:programare;proprii

 
Acest blog s-a mutat la http://www.serviciipeweb.ro/iafblog/