﻿<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Kuljit Sangha's blog</title>
    <description>&lt;table&gt;
        &lt;tr&gt;
            &lt;td valign="top"&gt;&lt;img height="183" width="139" alt="" src="/Portals/0/Blog/blog-kuljit-sangha.png" /&gt;&lt;/td&gt;
            &lt;td valign="top"&gt;
            &lt;p&gt;Kuljit Sangha has been with Quest Software since June 2001 and has held positions as a Tech Support Engineer, Quest University Instructor, and now as a Solutions Architect in the PreSales Organization.&lt;/p&gt;
            &lt;p&gt;In his blog, he'll share his insights on Toad family products.&lt;/p&gt;
            &lt;p&gt;&lt;font color="#003366" size="3"&gt;&lt;strong&gt;Recent postings: &lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
&lt;/table&gt;</description>
    <link>http://toadworld.com/BLOGS/tabid/67/BlogId/35/Default.aspx</link>
    <language>en-US</language>
    <managingEditor>Kuljit Sangha</managingEditor>
    <webMaster>webmaster@toadworld.com</webMaster>
    <pubDate>Thu, 11 Mar 2010 20:27:21 GMT</pubDate>
    <lastBuildDate>Thu, 11 Mar 2010 20:27:21 GMT</lastBuildDate>
    <docs>http://backend.userland.com/rss</docs>
    <generator>Blog RSS Generator Version 3.2.0.15477</generator>
    <item>
      <title>Migrating your BMF Repository</title>
      <description>&lt;div&gt;
&lt;p&gt;This blog will give you the necessary steps to migrate your MySQL BMF repository to another database of your choice. The following databases are supported by BMF: Oracle, SQL Server, MySQL and Sybase. We will be using the Data Migration Wizard that is provided to us by BMF.&lt;/p&gt;
&lt;p&gt;The first step is to decide which database platform you would like to do the migration for. Once that is decided, we can begin.&lt;/p&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;p&gt;Go to Start | All Programs | Quest Software | Benchmark Factory | Repository | Data Migration Wizard&lt;/p&gt;
&lt;p&gt;&lt;img width="541" height="407" alt="" src="http://toadworld.comhttp://toadworld.comhttp://toadworld.comhttp://toadworld.comhttp://toadworld.comhttp://toadworld.com/Portals/0/blogimages/Kuljit Sangha/Kuljit_123009-1.gif" /&gt;&lt;/p&gt;
&lt;p&gt;Click Next. On this next screen you will select the source of the repository. Most people will choose the BMF ODBC Connection since they are migrating from the default location.&lt;/p&gt;
&lt;p&gt;&lt;img alt="" src="http://toadworld.comhttp://toadworld.comhttp://toadworld.comhttp://toadworld.comhttp://toadworld.comhttp://toadworld.com/Portals/0/blogimages/Kuljit Sangha/Kuljit_123009-2.gif" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;p&gt;Click Next. On the next screen, you will choose the database platform you would like to migrate the repository over to. However in order to select a database, you must create an ODBC connection to that database. If one does not already exist, click on the ODBC Administrator button. Once you select the ODBC connection, put in the necessary username/password to connect to the database. Beware that the BMF objects will be created into this account. If you prefer an independent BMF schema, then please create a new user ahead of time.&lt;/p&gt;
&lt;p&gt;&lt;img alt="" src="http://toadworld.comhttp://toadworld.comhttp://toadworld.comhttp://toadworld.comhttp://toadworld.comhttp://toadworld.com/Portals/0/blogimages/Kuljit Sangha/Kuljit_123009-3.gif" /&gt;&lt;/p&gt;
&lt;p&gt;Once you have completed the above information and have clicked Next, you will come to a confirmation screen. This will indicate that everything has been setup correctly, and you are now ready to migrate the data.&lt;/p&gt;
&lt;p&gt;&lt;img alt="" src="http://toadworld.comhttp://toadworld.comhttp://toadworld.comhttp://toadworld.comhttp://toadworld.comhttp://toadworld.com/Portals/0/blogimages/Kuljit Sangha/Kuljit_123009-4.gif" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;p&gt;Click Finish and the wizard will start the migration of your data.&lt;/p&gt;
&lt;p&gt;&lt;img alt="" src="http://toadworld.comhttp://toadworld.comhttp://toadworld.comhttp://toadworld.comhttp://toadworld.comhttp://toadworld.com/Portals/0/blogimages/Kuljit Sangha/Kuljit_123009-5.gif" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;p&gt;After everything is completed, you can go into the target database to verify that the objects have been created successfully. They will be prefixed with ‘BF’.&lt;/p&gt;
&lt;p&gt;&lt;img alt="" src="http://toadworld.comhttp://toadworld.comhttp://toadworld.comhttp://toadworld.comhttp://toadworld.comhttp://toadworld.com/Portals/0/blogimages/Kuljit Sangha/Kuljit_123009-6.gif" /&gt;&lt;/p&gt;
&lt;/div&gt;</description>
      <link>http://toadworld.com/BLOGS/tabid/67/EntryID/490/Default.aspx</link>
      <author>Kuljit Sangha</author>
      <comments>http://toadworld.com/BLOGS/tabid/67/EntryID/490/Default.aspx#Comments</comments>
      <guid isPermaLink="true">http://toadworld.com/Default.aspx?tabid=67&amp;EntryID=490</guid>
      <pubDate>Wed, 30 Dec 2009 23:39:00 GMT</pubDate>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://toadworld.com/DesktopModules/Blog/Trackback.aspx?id=490</trackback:ping>
    </item>
    <item>
      <title>Code Assist Feature – Customizing it to fit your needs</title>
      <description>&lt;div&gt;Under the Editor menu in Toad for Oracle we have the “Make Code” &amp; “Strip Code” features which allow you to embed SQL Statements in a programming language of your choice.&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;For example you can take the following statement:&lt;/div&gt;
&lt;blockquote dir="ltr" style="margin-right: 0px"&gt;
&lt;pre&gt;SELECT   b.order_date, d.price, a.cust_id, a.NAME, c.qty, d.part_id,&lt;br /&gt;         d.qty_on_hand&lt;br /&gt;    FROM quest_dev.ow_customers a, quest_dev.ow_orders b, quest_dev.ow_order_lines c, quest_dev.ow_parts d&lt;br /&gt;   WHERE (d.part_id = c.part_id)&lt;br /&gt;     AND (b.order_id = c.order_id)&lt;br /&gt;     AND (b.cust_id = a.cust_id)&lt;br /&gt;     AND (d.part_id = c.part_id)&lt;br /&gt;     AND (c.order_id = b.order_id)&lt;br /&gt;     AND (price &lt; 150)&lt;br /&gt;     AND (d.qty_on_hand &lt; 250)&lt;br /&gt;ORDER BY b.order_date ASC&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;div&gt;Go to Editor menu and click Make Code. The new statement will be copied to the clipboard and you can paste it into another new tab:&lt;/div&gt;
&lt;blockquote dir="ltr" style="margin-right: 0px"&gt;
&lt;pre&gt;SQL.Append(" SELECT   b.order_date, d.price, a.cust_id, a.NAME, c.qty, d.part_id, ") &lt;br /&gt;SQL.Append("          d.qty_on_hand ") &lt;br /&gt;SQL.Append("     FROM quest_dev.ow_customers a, quest_dev.ow_orders b, quest_dev.ow_order_lines c, quest_dev.ow_parts d ") &lt;br /&gt;SQL.Append("    WHERE (d.part_id = c.part_id) ") &lt;br /&gt;SQL.Append("      AND (b.order_id = c.order_id) ") &lt;br /&gt;SQL.Append("      AND (b.cust_id = a.cust_id) ") &lt;br /&gt;SQL.Append("      AND (d.part_id = c.part_id) ") &lt;br /&gt;SQL.Append("      AND (c.order_id = b.order_id) ") &lt;br /&gt;SQL.Append("      AND (price &lt; 150) ") &lt;br /&gt;SQL.Append("      AND (d.qty_on_hand &lt; 250) ")&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;div&gt;The language above is an example of VB.net.  You can change the language under View Menu |Toad Options | Editor | Code Assist . Look at the bottom left corner and you will see the Make Code section.&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;If you click on VB.net and click “Edit” you will see the code we use:&lt;/div&gt;
&lt;blockquote dir="ltr" style="margin-right: 0px"&gt;
&lt;pre&gt;{VB.NET Language Template} &lt;br /&gt; &lt;br /&gt;%SqlVar%.Append(" %SqlText% ") &lt;br /&gt;%SqlVar%.Append(" %SqlTextNext% ")&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;
&lt;table cellspacing="1" cellpadding="1" width="500" border="1"&gt;
    &lt;tbody&gt;
        &lt;tr&gt;
            &lt;td&gt;%SqlVar%&lt;/td&gt;
            &lt;td&gt;This will put the word SQL in your template.&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td&gt;%SqlText%&lt;/td&gt;
            &lt;td&gt;This will put the first line of your select statement.&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td&gt;%SqlTextNext%&lt;/td&gt;
            &lt;td&gt;This will put the remaining lines of your select statement.&lt;/td&gt;
        &lt;/tr&gt;
    &lt;/tbody&gt;
&lt;/table&gt;
&lt;/p&gt;
&lt;p&gt;Knowing these values … it makes it easy for the end user to customize their own language. Toad comes with a pre-defined list of languages, but in case you are working with something not in our list, you can click on the “New” button and create your own template using the above variables in your code. In some cases, you will find that some languages that we do not list (like ASP) use the same template that can be found in our list (like VB) … so before you create your own template, take a look at all our existing templates.&lt;/p&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;Hope this was helpful, and if you are still having problems let us know and we will do our best to assist you.&lt;/div&gt;</description>
      <link>http://toadworld.com/BLOGS/tabid/67/EntryID/435/Default.aspx</link>
      <author>Kuljit Sangha</author>
      <comments>http://toadworld.com/BLOGS/tabid/67/EntryID/435/Default.aspx#Comments</comments>
      <guid isPermaLink="true">http://toadworld.com/Default.aspx?tabid=67&amp;EntryID=435</guid>
      <pubDate>Mon, 31 Aug 2009 19:02:00 GMT</pubDate>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://toadworld.com/DesktopModules/Blog/Trackback.aspx?id=435</trackback:ping>
    </item>
    <item>
      <title>Making Database Changes Logically</title>
      <description>&lt;div&gt;
&lt;p&gt;Our experts at Quest continue to work hard to develop educational material for our end users to learn from, thus allowing them to become product experts themselves. Unfortunately, due to the hectic schedule of our end users, they are sometimes unable to put all the pieces together. In this blog, I piece together some steps for using the Toad Data Modeler and tying it back to Toad for Oracle by presenting a &lt;strong&gt;situation, steps, &lt;/strong&gt;and an &lt;strong&gt;objective.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Situation&lt;/strong&gt;: You are tasked with the responsibilities of modifying your database objects and documenting the changes. There could be numerous ways of handling this, but I have chosen to tackle the method of modifying the objects logically first, and then applying the changes physically on the database.&lt;/p&gt;
&lt;/div&gt;
&lt;div&gt;&lt;strong&gt;Steps&lt;/strong&gt;:&lt;/div&gt;
&lt;ol&gt;
    &lt;li&gt;Using the Toad Data Modeler, we have the ability to reverse engineer your current schema into a physical data model. The following video tutorial illustrates the Reverse Engineering feature:&lt;br /&gt;
     
    &lt;ol&gt;
        &lt;li&gt;&lt;a href="http://modeling.inside.quest.com/entry.jspa?externalID=1673&amp;categoryID=158"&gt;http://modeling.inside.quest.com/entry.jspa?externalID=1673&amp;categoryID=158&lt;/a&gt;&lt;br /&gt;
         &lt;/li&gt;
    &lt;/ol&gt;
    &lt;/li&gt;
    &lt;li&gt;Now, you can begin to work on your model and make any necessary changes. I find this to be very helpful because it eliminates the chances of making errors on the database with physical changes. Taking a logical approach, you can make changes numerous times without any real consequences. The following video tutorial discusses entity attribute modifications:&lt;br /&gt;
     
    &lt;ol&gt;
        &lt;li&gt;&lt;a href="http://modeling.inside.quest.com/entry.jspa?externalID=2057&amp;categoryID=158"&gt;http://modeling.inside.quest.com/entry.jspa?externalID=2057&amp;categoryID=158&lt;/a&gt;&lt;br /&gt;
         &lt;/li&gt;
    &lt;/ol&gt;
    &lt;/li&gt;
    &lt;li&gt;If I have lost you along the way or you want to brush up on your foundational knowledge, the following video will help you obtain a good understanding of the workspace you are working on:&lt;br /&gt;
     
    &lt;ol&gt;
        &lt;li&gt;&lt;a href="http://modeling.inside.quest.com/entry.jspa?externalID=2060&amp;categoryID=158"&gt;http://modeling.inside.quest.com/entry.jspa?externalID=2060&amp;categoryID=158&lt;/a&gt;&lt;br /&gt;
         &lt;/li&gt;
    &lt;/ol&gt;
    &lt;/li&gt;
    &lt;li&gt;Once you have made the necessary changes, you may want to save that particular version of the model. We have a built-in Version Manager in TDM to allow you to reference these versioned models. The following video tutorial further illustrates this concept: &lt;br /&gt;
     
    &lt;ol&gt;
        &lt;li&gt;&lt;a href="http://modeling.inside.quest.com/entry.jspa?externalID=1697&amp;categoryID=281"&gt;http://modeling.inside.quest.com/entry.jspa?externalID=1697&amp;categoryID=281&lt;/a&gt;&lt;br /&gt;
         &lt;/li&gt;
    &lt;/ol&gt;
    &lt;/li&gt;
    &lt;li&gt;Once all of the changes have been made, you can choose between two options depending on your objective: &lt;br /&gt;
     
    &lt;ol&gt;
        &lt;li&gt;&lt;strong&gt;Option 1:&lt;/strong&gt;  If you want to generate a script for all the objects in the model, then we have a Generate DDL Script feature which that can be viewed in the following video:&lt;br /&gt;
         
        &lt;ol&gt;
            &lt;li&gt;&lt;a href="http://modeling.inside.quest.com/entry.jspa?externalID=2059&amp;categoryID=158"&gt;http://modeling.inside.quest.com/entry.jspa?externalID=2059&amp;categoryID=158&lt;/a&gt;&lt;br /&gt;
             &lt;/li&gt;
        &lt;/ol&gt;
        &lt;/li&gt;
        &lt;li&gt;&lt;strong&gt;Option 2:&lt;/strong&gt;  If you only want to generate a script of the differences*, then you can use our Compare/Alter Script feature which can be viewed in the following video:&lt;br /&gt;
         
        &lt;ol&gt;
            &lt;li&gt;&lt;a href="http://modeling.inside.quest.com/entry.jspa?externalID=1681&amp;categoryID=158"&gt;http://modeling.inside.quest.com/entry.jspa?externalID=1681&amp;categoryID=158&lt;/a&gt;&lt;br /&gt;
             &lt;/li&gt;
            &lt;li&gt;*For Option 2, you will have to compare it to another model. Specifically, keep the original vanilla model when you first reverse engineered the schema, and the current model is a version of that. By that I mean you have 1.0 and the model with the changes is 1.1 or 2.0. To achieve this type of versioning, please see step 4 above. &lt;br /&gt;
             &lt;/li&gt;
        &lt;/ol&gt;
        &lt;/li&gt;
    &lt;/ol&gt;
    &lt;/li&gt;
    &lt;li&gt;After the script has been generated, you can launch Toad for Oracle and open it in the editor. From here you can execute the script to apply the necessary changes. Please keep in mind that you will need to have the proper Oracle permissions to do so. &lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;If you would like to take it one step further by comparing the new changes to another existing schema, then Toad offers you the Compare Schema functionality. This feature also allows you to develop a synchronization script to make the target schema look like the source schema. Please note that the Compare Schema feature is available in Standard Toad, however the ability to use the sync script is limited to the DB Admin module add-on in Toad. The following video provides additional information about this feature:&lt;br /&gt;
     
    &lt;ol&gt;
        &lt;li&gt;&lt;a href="http://www.toadworld.com/Portals/0/assets_ifs/flashdemos/SchemaCompareSynch/index.htm"&gt;http://www.toadworld.com/Portals/0/assets_ifs/flashdemos/SchemaCompareSynch/index.htm&lt;/a&gt;&lt;br /&gt;
         &lt;/li&gt;
    &lt;/ol&gt;
    &lt;/li&gt;
    &lt;li&gt;At this point you will have fulfilled your requirements and hopefully saved a lot of time from manually having to do all of this. You can keep the scripts created from the Toad products as documentation backup. If you are interested in reports, the video above in the Reverse Engineering tutorial also showcases how to generate reports. Of course, if you saw that video already then you know about the reporting functionality &lt;span&gt;&lt;img alt="" src="http://toadworld.com/Providers/HtmlEditorProviders/Fck/FCKeditor/editor/images/smiley/msn/regular_smile.gif" /&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Objective&lt;/strong&gt;: The point of this blog was to string together multiple tutorials available to the public into one workflow. In many instances, we go on site and users ask us how to make their lives easier, or assist in certain day-to- day tasks. We recommend they visit our websites such as Toad World and learn from the tutorials. We realize that this may be overwhelming at times, so in the interest of helping to make our users’ lives easier, hopefully blogs like this can showcase a group of tutorials that meet one greater goal.&lt;/p&gt;
&lt;p&gt;We will continue to encourage feedback in an effort to create what you, the public, is looking for in our tutorials and blogs.&lt;/p&gt;</description>
      <link>http://toadworld.com/BLOGS/tabid/67/EntryID/420/Default.aspx</link>
      <author>Kuljit Sangha</author>
      <comments>http://toadworld.com/BLOGS/tabid/67/EntryID/420/Default.aspx#Comments</comments>
      <guid isPermaLink="true">http://toadworld.com/Default.aspx?tabid=67&amp;EntryID=420</guid>
      <pubDate>Thu, 30 Jul 2009 15:03:00 GMT</pubDate>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://toadworld.com/DesktopModules/Blog/Trackback.aspx?id=420</trackback:ping>
    </item>
  </channel>
</rss>