Friday, May 29, 2015

JQuery : jQuery.noConflict(); Resolve the $ Conflict

The JQuery library by design uses only two global namespace so that it would not conflict with other JavaScript libraries.
  • $ - the dollar is used as a reference to JQuery namespace
    • Also used by Prototype library, YUI and mootools
  • jQuery - is also used to reference to jQuery namespace, this the more unique reference of the two options, but nobody really uses it
So what do you do if you wanted to use jQuey and Prototype on the same page?  Well jQuery can concede the $ sign to the other libraries with the code jQuery.noConflict() function

This sample code shows how jQuery gives up the $ sign to the JavaScript library Prototype


<!DOCTYPE html>
<head>
<meta charset="UTF-8">
<title>JQuery No Conflict</title>
<script src="http://ajax.googleapis.com/ajax/libs/prototype/1.7.2.0/prototype.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script type="text/javascript">
jQuery.noConflict();

jQuery(document).ready(function(){
alert("jQuery still works!");
});
</script>
</head>
<body>
</body>
</html>


Note: The thing you have to remember is that the $ is no longer referring to JQuery, it now belongs to Prototype, if you try to use Prototype and JQuery on the same page without using jQuery.noConflict(), you will get a broken page with Prototype complaining that the $ does not work. However the error is not very description as you can see below in Firefox console.  You will get the TypeError: element.dispatchEvent is not a function.





Even though we've resolved the conflict, we are now left with type jQuery instead of using the $ every time we want to use jQuery.  Well we can assign the object jQuery to another shorthand variable with the code below.


<!DOCTYPE html>
<head>
<meta charset="UTF-8">
<title>JQuery No Conflict</title>
<script src="http://ajax.googleapis.com/ajax/libs/prototype/1.7.2.0/prototype.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script type="text/javascript">
jQuery.noConflict();

var jq = jQuery;

jq(document).ready(function(){
alert("jQuery still works!");
});
</script>
</head>
<body>
</body>
</html>

The code above assigns the jQuery namespace to the variable jq. It's not as cool as the $, but at least it's less typing.

Thursday, May 28, 2015

Installing The Northwind Sample Database From Microsoft

The Northwind sample database is probably the most mention sample database of all time.  Most of the tutorials on the web uses the Northwind sample database as an example.  However, it's not as straight forward to add the Northwind database to your SQL Server instance as you may have think.  The reason is because the Northwind database was initially created for SQL Server 2000.  Therefore, most of the newer versions of SQL Server will throw an error when you tried to attach the .mdb file.  It is easier to run the SQL script that is provided with the download.  In this blog we will go over where to download the Northwind sample database, and how to add to your SQL Server instance using the SQL script.

1. Open your browser and type in the following URL in the address bar
https://www.microsoft.com/en-us/download/details.aspx?id=23654

2.  Click on the "Download" button








3.  Save the SQL2000SampleDb.msi file to a location that you will remember in your PC














4.  Double click on the SQL2000SampleDb.msi file, click "Next" on the welcome screen




























5.  Accept the license agreement, then click "Next"


























6.  Select "Entire feature will be installed on local hard drive" and click "Next" on the "Choose Installation Options" step.



























7.  Click "Next" on the "Confirm Installation" screen


























8.  Click "Close" on the "Installation Complete" screen. To complete the installation


























9.  Up to this point we've only installed the Northwind sample database data and script files on our PC, the actual database has not been created in our SQL Server database instance.  The files are stored in the folder C:\SQL Server 2000 Sample Databases













10.  To create the Northwind database in our SQL Server database instance open the SQL Server Management Studio, and connect to your SQL Server instance.

11. Right-click on the "Databases" node and select "New Database"









12. On the "New Database" screen type "Northwind" in the Database Name: field, then click "OK" 















13.  Now an empty "Northwind" database has been created

















14.  Right-click on the "Northwind" database and select "New Query"








15.  A new query window is opened for the Northwind Database

16.  Open the file instnwnd.sql in the C:\SQL Server 2000 Sample Databases folder, then copy the table creation and seed data part of the script.  Since, we are running the script on our empty Northwind database we don't have to worry about the database creation part of the script.  Just one less thing to worry about.   Copy the contents in the northwind-create-table-seed.txt file into the SQL Query window in step 15.





































17. Click on the "Execute" button to run the script












18.  After the script has been run successfully you will get the message that the query has been executed successfully in the results window.





























19.  The Northwind database is now added to SQL Server with all the stored procedures and views in it.