|
posted by
iron (575787) on 03/31/2011 under
Questions category
|
 Multiple Records In An Array - VB ASP.NET
|
This article is a continuation of our discussion on the topic of building Oracle TimesTen In-memory database which costs 23,000 USD: URL. We have already discussed, How To Load A Single Record In An Array Using VB ASP.NET (URL) and How To Pass An Array From A Function In A Normal Program Flow (URL). The code snippet shown here is a generic function to load multiple records in an array, more specifically 2-dimensional array. We have named the function as GeneralDataReaderMultiple () and it takes three arguments: 'SQL', 'MaxRecordNo' and 'MinRecordNo'. Minimum and Maximum record number is used for recordset pagination; according to wikipedia:
On the Internet, pagination is used for such things as displaying a limited number of results on search engine results pages, or showing a limited number of posts when viewing a forum thread. Pagination is used in some form in almost every web application to divide returned data and display it on multiple pages. Read more: URL You will better understand the purpose of 'MaxRecordNo' and 'MinRecordNo' when we call this funtion from a normal program flow in the next article. The few Replace functions in the begining will help create deterance against 'SQL Injection' attacks.
SQL injection is a code injection technique that exploits a security vulnerability occurring in the database layer of an application. The vulnerability is present when user input is either incorrectly filtered ... -Wikipedia URL If everything goes smoothly, the resultant 2-dimensional array will contain the records extracted from the database otherwise it will contain "Error" keyword. Server.HtmlEncode() and stripHTML() will provide protection against XSS attacks. After the load process is complete we will immediately close the connection with the database. Next we will learn how to call this function from normal program flow.
[Full View|Discuss]
[Source|Follow]
|
Table of Contents
|
|
|
posted by
iron (575787) on 03/29/2011 under
Questions category
|
 Calling GeneralDotNetSqlDataReader(SQL)
|
This article is a continuation of previous article: How To Load A Single Record In An Array Using VB ASP.NET? URL where we learnt about how to write a generic function which can help us load a single record into an array from any ODBC database. Such generic function is useful because we can extract information from database and then immediately close the connection. Here we have shown that how we to call GeneralDotNetSqlDataReader(SQL) function in a normal program flow. The array generated by the function will be loaded in vResult -a String array variable, defined at the start of the code using Dim command. In case the SQL statement results in no record or an error then the 'Else' part of the code will be executed otherwise the session variable: AccessLevel will be assigned a value of 'access_level' field of dbadmin.person table. In the next article we will look into how to load multiple records from Oracle/any data source in an array. Again we will write a generic function so that you can easily copy and paste in your software program with little or no modification. Loading multiple records in an array will be like running Oracle TimeTen In-Memory database at no cost. I am having difficulty understanding, how Oracle came up with 23,000 USD for Oracle TimeTen In-Memory license fee. Maybe the product name sounds scary.
[Full View|Discuss]
[Source|Follow]
|
Table of Contents
|
|
|
posted by
iron (575787) on 03/17/2011 under
Questions category
|
 How To Load A Single Record In An Array Using VB?
|
If you notice, we have used Server.HtmlEncode() and stripHTML() in order to avoid Cross-site scripting (XSS) attacks. To read more about XSS visit http://msdn.microsoft.com/en-us/library/ff649310.aspx. XSS occurs when someone submits a script e.g. javascript on your website data-entry form. Now once you or anyone view that data-entry using Internet Explorer/FireFox; the browser will take it as if the javascript was already on the page and not the part of dynamic data came straight from the database. With Server.HtmlEncode() and stripHTML() all the scripting tags will be converted to HTML equivalent and leftover HTML tags will be striped as a second line of protection. On the other hand, few Replace() funtions at the start of GeneralDotNetSqlDataReader() will make sure that incoming SQL statement is not embedded with SQL Injection prone characters. Under the Source link, I have provided URL in case you want to read more about SQL injection attacks. Next we will look into how to use this function in a normal code flow.
[Full View|Discuss]
[Source|Follow]
|
Table of Contents
|
|
|
posted by
iron (575787) on 03/17/2011 under
Questions category
|
 Dataset Size Should Be Less Than Total RAM Size
|
First we will look at different ways of loading an Oracle dataset in a VB ASP.NET array. We will share some generic functions which will help you achieve this goal. Then we lean how to call these functions from within the normal code flow. These functions are tested against Oracle database with built-in SQL-Injection protection, Pagination functionality, Error handling and generic to an extent that all you need is to provide the SQL statement and connect string. Once we have the technology of loading Oracle dataset in VB ASP.NET array then we look into how to load all the dataset at the start of the application.
Please make sure your physical RAM size is well above the limit of your dataset (you are planning to load in an array) in terms of bytes otherwise Windows will create the Virtual RAM but if it is even over the Virtual RAM limit then your Windows OS will freeze. Virtual RAM a.k.a. PageFile; to read more about PageFile visit URL. If you try to load dataset of 1TB in an array with a RAM of your PC being 4 GB and max virtual RAM size as 4 GB; your system will crash/freeze and most likely you will end up rebooting your computer. I have provided a URL under Source link, in case you want to learn more or refresh your knowledge about arrays, more specifically Visual Basic arrays.
[Full View|Discuss]
[Source|Follow]
|
Table of Contents
|
|
|
posted by
iron (575787) on 03/13/2011 under
Questions category
|
 Larry Have Some Mercy: TimesTen For 23,000 USD?
|
Oracle Database is the most expensive RDBMS software in the world-wide market. Just to give you an idea, Oracle 11g Standard One Edition processor based license (dual socket or quad core) perpetual, costs 6,200 USD. Standard One is lowest, lower end or in other words small business solution. They also have Oracle Standard and Oracle Enterprise Edition Database, where later being the most expensive among the three. Now let's look at Oracle TimeTen In-memory database; it costs 23,000 USD processor based license as of March 2011. This is ridiculus, isn't it? It shows how Larry Ellison is one of the richest guys in competition to build world biggest yacht. In words of Oracle:
Oracle TimesTen In-Memory Database (TimesTen) is a memory-optimized relational database that delivers very low response time and very high throughput for performance-critical systems. It is basically Oracle's standard database with the only one major difference that at the start, almost all or at least most of the dataset is loaded in the RAM. These days RAM chips are dirt chip compared to years back. You can have a server with 64 GB RAM or 128 GB RAM or an enterprise level server with 512 GB RAM and then load the whole dataset in an array at the start of the application. Then serve all the connected sessions via this dataset array. Let's dive in. Prerequisites: VB ASP.NET, Arrays, ADO.NET, Oracle.
[Full View|Discuss]
[Source|Follow]
|
Table of Contents
|
|
|
posted by
iron (575787) on 11/05/2010 under
Questions category
|
 Linksys Extender Network Performance With QoS OFF
|
Everything was working okay for so many years and then one day while working on my Linksys WRT600N Router URL I decided to see how Quality of Service functionality will bring performance enhancement in my home network. I tested QoS for about 6 months and finally turned it off. Actually when you turn it ON on your Router you are adding another layer of computational burden on the Router. When QoS was ON the Linksys Extender was showing few bars in the "Acceptable for TV" block of Extender's Network Performance Monitor and it's overall performance was bad as well. But after turning QoS OFF, the Extender started showing all the bars and performance of the Extender became phenomenal.
[Full View|Discuss]
[Source|Follow]
|
|
|
|
|
posted by
iron (575787) on 07/30/2010 under
Questions category
|
[Full View|Discuss]
|
|
|
|
|
posted by
iron (575787) on 07/30/2010 under
Questions category
|
[Full View|Discuss]
|
|
|
|
|
posted by
iron (575787) on 07/30/2010 under
Questions category
|
[Full View|Discuss]
|
|
|
|
|
posted by
iron (575787) on 07/30/2010 under
Questions category
|
[Full View|Discuss]
|
|
|
|
|
posted by
iron (575787) on 07/30/2010 under
Questions category
|
[Full View|Discuss]
|
|
|
|
|
posted by
iron (575787) on 07/30/2010 under
Questions category
|
[Full View|Discuss]
|
|
|
|
|
posted by
iron (575787) on 07/30/2010 under
Questions category
|
[Full View|Discuss]
|
|
|
|
|
posted by
iron (575787) on 07/30/2010 under
Questions category
|
[Full View|Discuss]
|
|
|
|
|
posted by
iron (575787) on 07/30/2010 under
Questions category
|
[Full View|Discuss]
|
|
|
|
|
Next Page
|