?

Log in

About this Journal
Current Month
 12345
6789101112
13141516171819
20212223242526
2728293031
Dec. 15th, 2009 @ 04:23 pm too far ahead, too far behind
windows 64
+ access 2007
+ need to open a 32 bit .mdb (access 2003?)
+ from c#
=fail.
getting
the 'microsoft.jet.oledb.4.0' provider is not registered on the local machine.
apparently i need to run in 32 bit mode, so i put x86 in project file (Solves that one)
now getting Could not find installable ISAM
installing office 2003 just for kicks
About this Entry
Sep. 20th, 2009 @ 08:45 pm html validator for pages. may be useful :)
probably old news but thought it was cool
http://validator.w3.org/check?uri=http://www.google.com/
checks the code of the page against the standards
About this Entry
Sep. 20th, 2009 @ 08:23 pm Psychologist and Therapist in Yardley PA
Tags: , ,
built this site. thought it was pretty visually appealing.

www.livewellservicesinc.com



not a customer, though heard quite a few decent feedbacks from their customers

About this Entry
Apr. 20th, 2009 @ 10:58 am rode a 250 ninja
so you ever wonder what it's like to ride a 250 ninja? Me neither but
here's my experience with it:

 

Read more...Collapse )
About this Entry
Jan. 29th, 2009 @ 09:07 am SQL Output Clase - for those who DON'T Know

SQL Output Clause

Insert, update, and delete statements can have an output clause.

This can output cells from the impacted rows.  

Read more...Collapse )
About this Entry
Jan. 29th, 2009 @ 09:02 am SQL XML - for those who DON'T know

SQL XML

Sql 2005 supports xml natively. This allows for data structures to be stored in yet another way, and is occasionally very useful for building objects.


 

Read more...Collapse )

 

About this Entry
Jan. 29th, 2009 @ 08:45 am SQL try/catch/transaction - for those who DON'T know

Try Catch Throw, and Transactions

Sql 2005 introduced a better try/catch construct and the ability to re-throw the exception. Previously checking the @@error was really the only way to test for errors. This makes commiting/rolling back transactions a synch and still allows the option to bubble an error up to .net or whatever is calling a stored proc

 

Read more...Collapse )
About this Entry
Jan. 29th, 2009 @ 08:19 am SQL Pivot/Unpivot - for those who DON'T know

Pivot, Unpivot

Pivot and unpivot allow the selection of rows as columns and vice versa. This is mostly useful for reporting and often data-imports. Pivot rotates rows (values) into columns

 


 

Read more...Collapse )
About this Entry
Jan. 28th, 2009 @ 08:35 am SQL CTE Common table expressions - For those who DON'T know

Common Table Expression (CTE) now with 100% more recursion!

 

 

Common Table Expressions are pretty much a just in time view that can be used in a query or stored proc. The advantage over a view is the ability to use parameters to limit the dataset used.

 


 

Read more...Collapse )

 

About this Entry
Jan. 27th, 2009 @ 04:10 pm SQL Group By Where Having Select Distinct - for those who DON'T know

Group By, Where, Having, Select Distinct

Group By is possibly the least understood commonly used function of SQL. A typical use for group by will come from a query such as this one:

SELECT count([ProductID])

      ,[Name]

      ,[ProductNumber]

      ,[MakeFlag]

      ,[FinishedGoodsFlag]

      ,[Color]

      ,[DaysToManufacture]

 FROM Production.Product

Which returns an error:

Msg 8120, Level 16, State 1, Line 1

Column 'Production.Product.Name' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.

So a developer will end up doing something like this:

SELECT count([ProductID])

      ,[Name]

      ,[ProductNumber]

      ,[MakeFlag]

      ,[FinishedGoodsFlag]

      ,[Color]

      ,[DaysToManufacture]

 FROM Production.Product

group by [Name]

      ,[ProductNumber]

      ,[MakeFlag]

      ,[FinishedGoodsFlag]

      ,[Color]

      ,[DaysToManufacture]

Which doesn’t really provide any useful information.

A proper use for the group by clause is to specify on what to base the aggregate function (count, sum, avg, max, etc.). By saying “select count(productid)…. Group by daystomanufacture” the developer is requesting a listing of the count of products FOR EACH value in daystomanufacture.

 

Count(productid)

daystomanufacture

246

0

154

1

7

2

97

4

 

The where and having clauses can change these numbers. Where is used for pre-aggregation filtering, and Having is used for post-aggregation filtering. Consider these two queries

SELECT count([ProductID])

      ,[DaysToManufacture]

 FROM Production.Product

where daystomanufacture<2

group by

      [DaysToManufacture]

And

SELECT count([ProductID])

      ,[DaysToManufacture]

 FROM Production.Product

group by

      [DaysToManufacture]

having count(ProductID)>7

The first will return the rowset where DaysToManufacture, a field in the table, is less than 2. The second will return the rowset where the COUNT of productid, a calculated aggregate is >7

 

Select Distinct returns records that are not identical. THIS DOES NOT FIX PROBLEMS WITH INCORRECT CARTESIANS!

 

Select a, b from tblsomething

 

A

B

1

Alpha

1

Bravo

2

Delta

2

Delta

Select distinct a, b from tblsomething

 

A

B

1

Alpha

1

Bravo

2

Delta

About this Entry